您的位置:首页 > 汽车 > 新车 > Git --- Branch Diverged

Git --- Branch Diverged

2024/9/8 10:42:40 来源:https://blog.csdn.net/weixin_38803409/article/details/140591631  浏览:    关键词:Git --- Branch Diverged

Git --- Branch Diverged

  • Branch Diverged是如何形成的
  • 如何解决
    • Rebase
    • Merge

Branch Diverged是如何形成的

  • 尝试提交并将更改推送到 master 分支时,是否看到这条烦人的消息
    在这里插入图片描述

原因是:
在这里插入图片描述

  • 直到更改 B 之前,我的分支和“origin/master”完全相同。从更改 B 开始,我的分支和“origin/master”开始出现分歧。我的分支从更改 E、F 和 G 开始,而“origin/master”则遵循更改 C 和 D,这完全解释了消息“您的分支和“origin/master”已出现分歧,分别有 3 个和 2 个不同的提交。”这里,3 代表 E、F 和 G,而 2 代表 C 和 D
  • 注意:这种情况通常会在您尝试将更改合并到“origin/master”时发生,而您团队中的其他人在您与“origin/master”同步之后、合并更改之前推送了一些其他更改

如何解决

Rebase

git rebase origin/master

在这里插入图片描述

  • 您的分支曾经基于更改 B,现在基于更改 D。现在,您应该可以毫无问题地将代码从分支合并到“origin/master”。
  • 优点:更清晰/线性的 git 历史记录,可帮助人们更快、更轻松地找到导致回归的原因(如果有的话)。
  • 缺点:如果操作错误,合并冲突可能会变得更加频繁,并且可能会丢失提交历史记录。

Merge

git merge origin/master

在这里插入图片描述

  • 如您所见,尽管您的分支和“origin/master”已经分开,但最终还是合并在一起了。
  • 优点:解决冲突更简单、更快捷。
  • 缺点:非线性 git 历史记录。
  • 我个人更喜欢 rebase,因为它提供了更线性的 git 历史记录,这在将来需要查看 git 历史记录时非常有用。但是,在 rebase 时解决冲突可能会很麻烦。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com