Git 比较 两个分支之间的“提交差异”

导读:本篇文章讲解 Git 比较 两个分支之间的“提交差异”,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

从master分支拷贝一个新分支,命名为fixBug。

修改若干文件后,做了第一次提交,提交描述为:提交描述1。

修改若干文件后,做了第二次提交,提交描述为:提交描述2。

此刻,想看看有哪些提交是fixBug分支上有,而master分支上没有的:

$ git log fixBug ^master
commit 693f162e7b8f99ef9b15db4ff16c6f5870e5b7f9 (HEAD -> fixSSo)
Author: zhangsan <zhangsan@xxx.com>
Date:   Wed Feb 24 20:12:35 2021 +0800

    提交描述2。

commit 96246b73502661ce3db73122c6152fb886aeb107
Author: zhangsan <zhangsan@xxx.com>
Date:   Wed Feb 24 20:07:21 2021 +0800

    提交描述1。

想看看有哪些提交是master分支上有,而fixBug分支上没有的:

$ git log master ^fixBug

可见,在fixBug分支上开发期间,master分支上没有新的提交。

如果上述命令有返回值,就说明别人已经向master分支有提交,应该尽早将这些提交内容merge到当前分支,即fixBug分支。

最佳实践,master分支不要给开发人员权限,而是交给持续集成(Continuous Integration,CI)工具,这样能防止发生低级错误。例如,fixBug分支开发、测试完毕了,使用CI工具准备上线。上线前,CI工具可以通过Shell脚本等进行如下校验:有哪些提交是master分支上有,而fixBug分支上没有的。如果有,那就停止上线,提示用户:fixBug分支没有包含master分支上所有的提交,需要进行merge操作,否则就有功能遗漏。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/17217.html

(0)
小半的头像小半

相关推荐

极客之家——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!