该git blame
命令显示的提交哈希缩写为比其他命令长一个字符的长度。例如:
$ git log --oneline
9fb6f706 (HEAD -> master) second commit
0af747a8 first commit
$ git blame foo
9fb6f7064 (gilles 2020-11-15 12:28:09 +0100 1) revised
^0af747a8 (gilles 2020-11-15 12:27:41 +0100 2) world
我经常从输出中复制粘贴一个缩写哈希,blame
并在日志或交互式 rebase 的提交集中搜索它。但是因为缩写在git blame
输出中长了一个字符,所以我要记得删除最后一个字符,否则搜索什么都找不到。
对于脚本,我会使用未缩写的哈希和瓷器格式。但是对于交互式使用,我想使用缩写哈希。
设置core.abbrev
选项没有帮助:git blame
添加一个。使用一个更少的值设置core.abbrev
和调用blame --abbrev
,但这不是一个好的解决方案,因为我失去了 git 的启发式方法来确定短提交 id 的合适长度,我必须显式传递此选项或使用不同的命令名称作为别名。
我怎样才能使一个简单git blame
的使用与其他 git 命令相同的缩写提交 ID 的长度?