gpt4 book ai didi

git - 如果重新设置已推送到远程的分支,是否发出警告?

转载 作者:太空狗 更新时间:2023-10-29 14:39:41 24 4
gpt4 key购买 nike

有什么方法可以让 git 在您尝试对已推送的分支进行 rebase 时发出警告? (即在您可能“重写历史”的情况下。)

(我意识到在某些情况下 git 不会知道您是否正在重写历史记录,但通常(通常?)它会有这些信息。)

最佳答案

您可以使用 git 的 pre-rebase 钩子(Hook)在这种情况下产生警告或错误。 (the various githooks is here 的文档。)sample pre-rebase hook做一些与您想要的非常相似的事情,尽管(如 http://git-scm.com/book/en/Customizing-Git-Git-Hooks 指出的那样)您需要将分支名称 next 更改为您发布的分支名称。

可能还值得指出(如 pmr 在上面的评论中提到的那样),如果您重写了公共(public)历史,那么尝试推送该重写的分支将不会成功 - 您将得到一个错误来避免这种情况问题。

此外,您应该知道您通常可以安全地执行以下操作:

git rebase <upstream-remote-tracking-branch>

例如,如果您在 master 分支上工作,并且它的上游远程跟踪分支是 origin/master,那么:

git rebase origin/master

...将只考虑重新应用未包含在 origin/master 中的提交,并且当您推送到 时该远程跟踪分支会更新origin 中的 master 以及从 origin 获取时。 (我在上面说“通常”的原因是,如果您使用多个 Remote ,或者您以不寻常的方式设置了远程跟踪分支,这会更加复杂。)

关于git - 如果重新设置已推送到远程的分支,是否发出警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13230186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com