显示本地分支B尚未提交的本地分支A上的提交

问题描述 投票:-1回答:2

我已经读过,有

$ git checkout B
$ git cherry -v A

但是这对我没有任何帮助,我想这(以及其他一些类似的命令,我认为git log B ^A确实会输出一些差异,但是以某种方式并未显示所有不同的提交)仅适用于B的情况是A的远程跟踪分支。

但是我想比较两个本地分支的提交,所以我该怎么做?

更新:更详细些,我尝试过

git log B..A

git log B ^A

但是来自A的HEAD没有出现,尽管它不在B上。

编辑:不确定,如果我以错误的方式执行了git cherry,则可能是我犯了一个错误,因此它应该可以正常工作

git branch commit difference
2个回答
2
投票

如果要显示所有可从A到达的提交,但不包括那些可从B到达的提交:

git log A ^B # read: A, but *not* B

或更符合git log的一般用法:

git log B..A # read: show history from B to A

两个命令的行为是相同的(两个refspecs描述相同的提交)


0
投票

Ciao,

让我们假设要运行:

git branch

并获得branchAbranchB

我们可以将它们与:

git diff branchA..branchB

顺序不是很重要,如果您反转branchB和branchA,则加号变为减号,反之亦然。通常,较老的分支优先,但这只是一个约定]

git diff --color-words branchA..branchB

使用此命令,您只能对上一个命令获得的结果有不同的看法

您甚至可以通过以下方式进行比较,以选择branchB中最后一次提交的祖先:

git diff branchA..branchB^
git diff branchA..branchB^^

希望有帮助,安东尼诺

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