我不确定这种行为是否奇怪,但这就是正在发生的事情:似乎如果我git blame
在一个文件上运行,该文件中来自初始提交的任何行都有一个带有前导插入符号 ( ^
) 的 SHA,就像这样
^bb65026 (Brian Danielak 2012-10-27 19:11:54 -0700 1) 你好,世界! bbcd4a96 (Brian Danielak 2012-10-27 19:11:54 -0700 2) 你好!
重现步骤
从终端提示:
mkdir newProject
cd newProject
git init
echo 'hello, world!' >> testFile.txt
git add testFile.txt
git commit -m "Initial Commit"
git blame testFile.txt
然后验证您的责备输出是否有一个前导插入符号,就像我的一样(尽管您的 SHA 可能不匹配)
^bb65026 (Brian Danielak 2012-10-27 19:11:54 -0700 1) hello, world!
作为测试,您可以尝试在文件中添加第二行并重新提交,以查看只有第一行的哈希包含前导插入符号
echo 'hello again!' >> testFile.txt
git add testFile.txt
git commit -m "Initial Commit"
git blame testFile.txt
我的责备输出现在看起来像这样:
^bb65026 (Brian Danielak 2012-10-27 19:11:54 -0700 1) 你好,世界! bbcd4a96 (Brian Danielak 2012-10-27 19:11:54 -0700 2) 你好!
谁能解释为什么会发生这种情况,以及我是否应该预料到它?只有当一行来自回购中的第一次提交时才会发生这种情况吗?如果是这样,为什么?