我已经执行了以下步骤,但是当我将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
)看到两个分支之间的差异。
关于您的情况:
据我所知,这种行为的最可能原因是将本地分支中的develop分支合并。如果在合并过程中(fyi pull操作是提取和合并的组合),而合并没有以快进的方式处理,那么您又获得了开发分支的另一种状态,这里可能是合并提交,您可以比较哈希的提交。为了防止这种情况,您应该使用git pull --rebase
命令提取某些本地分支。
如果您想在将本地功能分支推送到远程服务器之前获得最新的更改,也可以在功能分支上运行git pull --rebase origin develop
,则提交的树看起来就像您刚刚从dev创建了功能分支并将所有已创建的在父级分支提交后在功能分支上提交。
希望对您有所帮助!