列表提交合并后组成的功能要掌握

时间:2016-03-20 07:18:33

标签: git

我对一个分支进行了多次提交,然后将它(no-ff)合并为master并删除了本地和远程分支。

我后来想知道提交该功能的提交内容。

然而,我的日志看起来不像nice git log

看起来更像是因为团队在接受GitHub上的拉取请求之前不会修改他们的分支spaghetti commit log

第一张图片显示了构成该功能的3个提交,但第二个图片要求我向下滚动很长一段距离,以跟踪移动的行以查找提交。

是否有任何方法可以从第二个日志中过滤掉该功能,使其看起来更像第一个?

1 个答案:

答案 0 :(得分:0)

  

我后来想知道提交该功能的提交内容。

几个选项:

git log

您可以再次结帐主人,然后将其与您的分支机构进行比较

git log ^master oauth-signin
git log master ^oauth-signin

# add any more flag you like
git log --decorate --graph --oneline --all

# Display the difference between range of commits (in this case HEAD and its parent)
git log HEAD^..HEAD --oneline --stat --graph --decorate

git merge-base

它将显示使用merge-base的分支之间的区别。

  

git merge-base 找到两次提交之间的最佳共同祖先,以便在三向合并中使用。

     

如果后者是前者的祖先,一个共同的祖先更好比另一个共同祖先更好。没有任何更好的共同祖先的共同祖先是最佳共同祖先,即合并基础。请注意,一对提交可以有多个合并基础。

其他选项:

git diff HEAD...<SHA-1>
git show HEAD...<SHA-1>

# on git version > 2.6
git log --cc