应该'git log ^ X'显示什么?

时间:2015-06-20 17:11:59

标签: git logging

$ git log --oneline
05f1c3b master: Modified 1.txt
f7433e0 Updated by master
e30dff9 Modified 1.txt
82ebf7a Modified 1.txt
cbb2785 master: Added 4.txt after rebase branch was created
980a5d6 b1: Added 1.txt
badc046 Resolved merge conflict
47a2d78 Mods by b2
c3eb61e Added by b1
9378e3d 1ST commit

以下内容均未显示:

$ git log ^47a2d78

我认为它应该显示来自badc046的所有提交,因为这些提交无法从47a2d78到达。

我错过了什么?

2 个答案:

答案 0 :(得分:4)

^hash表示“排除可以从(即祖先)到达的提交。”

因此:

git log ^47a2d78

转换为“显示由散列47a2d78排除的所有提交的日志”。这与任何提交都不匹配。如果您想在47a2d78之后显示所有提交,则必须使用log ^47a2d78 HEAD,或者更轻松地显示:

git log 47a2d78..HEAD

答案 1 :(得分:-1)

如果您想要提交一系列提交,请执行以下操作:

git log HEAD...47a2d78