替换Git’;带索引的s SHA

替换Git’;带索引的s SHA,git,version-control,commit,Git,Version Control,Commit,我的同事最近指出,SVN使用唯一的数字表示其提交。若我想在Git中引用提交,我知道我只需要复制SHA的几个数字,但即使一个项目有数千个提交,增加的数字也会更容易记住甚至键入 可以让Git这样列出它的提交吗 0001 a258cb5 Latest commit 0002 373a4e2 previous one 0003 00f7c33 ... 0004 0bbc4da ... 0005 5b7eb09 ... 这样,您可以使用类似于HEAD~2的内容来引用提交,而不是00f7c33。当然,每完

我的同事最近指出,SVN使用唯一的数字表示其提交。若我想在Git中引用提交,我知道我只需要复制SHA的几个数字,但即使一个项目有数千个提交,增加的数字也会更容易记住甚至键入

可以让Git这样列出它的提交吗

0001 a258cb5 Latest commit
0002 373a4e2 previous one
0003 00f7c33 ...
0004 0bbc4da ...
0005 5b7eb09 ...

这样,您可以使用类似于
HEAD~2
的内容来引用提交,而不是
00f7c33
。当然,每完成一次提交,数字都会发生变化,但我很少提及较旧的提交,因此数字永远不会很大且容易记住。

在git中,这没有意义,因为提交实际上没有顺序。您可以应用其他地方的一些更改,然后向前合并其他更改。我想这适用于任何分布式版本控制软件

除非你管理自己根据历史生成的列表,否则恐怕这是不可能的

如果您寻找一种更可读的唯一标识更改的方法(不是数字,而是一些人性化的字符串),则可以使用的输出。 格式为:

last tag - # of commits since tag - g.id
HEAD~3
指的是最新的前三个提交(在您的示例中标记为0004)。请参阅
mangit rev parse
So的指定修订部分。。。除非问题是“如何使
git日志
对提交进行编号以便不必计数”,否则我认为根本没有什么问题!