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