我如何比较两个Git分支,仅在Feature / Topic(第二个)分支中列出新提交

问题描述 投票:0回答:1

我已经执行了以下步骤,但是当我将develop分支与feature分支进行比较时,我看到了两条提交消息,而不仅仅是我希望看到的1条提交消息。一个是已经在develop中的上一个提交,另一个是我在feature分支中所做的最新提交。

  1. 我已经从远程分支拉出并合并了本地develop分支
  2. 然后从develop创建了一个新分支
  3. 进行了更改并在git commit -m "latest changes"分支中添加了这些文件和feature
  4. 执行git pushfeature分支推送到远程分支
  5. [将developfeature进行比较时,我看到了两次提交,而不仅仅是一次(我在feature分支中创建的一次提交]

为什么会发生这种情况,如何解决此问题?

git github branch feature-branch
1个回答
0
投票

您的问题的答案:您可能会通过执行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创建了功能分支并将所有已创建的在父级分支提交后在功能分支上提交。

希望对您有所帮助!

© www.soinside.com 2019 - 2024. All rights reserved.