![](/img/trans.png)
[英]Compare two git branches without intermediate commits (i.e. only commits that are accessible from the branches)
[英]How can I compare two Git branches and only list the new commits in the feature/topic (second) branch
我已经执行了以下步骤,但是当我将develop
分支与feature
分支进行比较时,我看到了两条提交消息,而不是我希望看到的只有 1 条提交。 一个是已经在develop
中的先前提交,另一个是我在feature
分支中所做的最新提交。
develop
分支develop
分支git commit -m "latest changes"
在feature
分支中git push
将feature
分支推送到远程分支develop
与feature
进行比较时,我看到了两个提交而不是一个(我在feature
分支中创建的那个)为什么会发生这种情况,我该如何解决这个问题?
回答您的问题:您可能会通过执行git log <parent_branch_name>..<your_feature_branch_name>
看到两个分支之间的差异,例如git log develop..feature
。
关于您的情况:正如我所看到的情况,这种行为的最可能原因是在您的本地存储库中合并开发分支。 如果在合并过程中(仅供参考拉操作是组合提取和合并),合并没有快速处理,那么你得到另一个开发分支的 state,这里可能是合并提交,你可以比较提交哈希。
为了防止这种情况,您应该使用git pull --rebase
命令来拉取一些本地分支。
如果您想在将本地功能分支推送到远程服务器之前获得最新更改,您还可以在您的功能分支上运行git pull --rebase origin develop
,然后提交的树看起来就像您刚刚从开发和放置在父分支提交后,所有在功能分支上创建的提交。
我希望,它会对你有所帮助!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.