在 Git 中,有多种方式来引用提交,包括完整的 SHA 哈希或哈希的缩写形式(例如,前 6 个字符左右)。您还可以使用“友好”语法命名提交,例如 HEAD、HEAD^、HEAD^^、HEAD~3 等等。
给定 SHA 哈希形式的任意提交,Git 中是否有工具可以为所述提交找到“友好”名称?
如果我使用 git-show-branch
,我会得到一个“友好”形式的修订列表,所以我觉得一定有办法……我就是找不到工具来做到这一点。
最佳答案
您可以使用“git name-rev”来获取您所询问的表格。该形式的一个问题是,相对于分支而言,它不是永久名称。因此,另一种选择是“git describe”,它根据给定提交的标记提前多远生成一个替代的友好名称。
例如:
srh@devo16:~/src/git <master>$ git name-rev 3cd7388
3cd7388 master~2
但是在我执行“git pull”之后,master~2 可能意味着别的东西。相比之下:
srh@devo16:~/src/git <master>$ git describe 3cd7388
v1.6.3.1-153-g3cd7388
现在“v1.6.3.1-153-g3cd7388”是一个永久名称。当然,它仍然有点长(尽管您可以通过指定“--abbrev=4”等方式缩短末尾的散列位),但它表明 3cd7388 在版本 1.6.3.1 之后有 153 个变化。
关于git - 在 Git 中,有没有办法为任意提交获取 "friendly"名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/917102/