git log缩写格式长度

时间:2016-04-08 01:07:51

标签: git

我想以缩写格式从GIT日志中获取SHA编号。该命令将起作用:

driver = webdriver.Firefox()
driver.get("http://stackoverflow.com/search?tab=newest&q=selenium")
driver.execute_script("window.scrollBy(0, document.documentElement.scrollHeight)")

但是,默认的缩写格式是7个数字。 有没有办法改变它?

2 个答案:

答案 0 :(得分:7)

对于void Foo (int op = 42) { if (x!=42) //do something else } int x = 33; Foo(); Foo(x); git log参数控制--abbrev=<length>和其他缩写哈希的输出的持续时间:

%h

我还要注意,当使用$ git log -1 --format=%h --abbrev=4 d157 (或-1在这种特殊情况下具有相同的效果,但如果指定多个提交标识符则更有用),如果你想要的只是提交哈希,使用--no-walk是过度的:git log会得到哈希值。由于没有明显原因,用于将git rev-parse的提交ID限制为特定长度的控制旋钮拼写为git rev-parse而不是--short;并--abbrev要求你拼出git rev-parse,如果你的意思是HEAD,那么:

HEAD

答案 1 :(得分:1)

您可以使用以下命令获取完整哈希:

git log -1 --format=%H

你也可以使用任意数量的字符,例如 6 数字:

git log -1 --format=%h --abbrev=6

编辑1:

要尝试回购的散列是多少饱和,请执行下一步:

git rev-list --all --abbrev=0 --abbrev-commit |
    awk '{ a[length] += 1 } END { for (len in a) print len, a[len] }'

我希望这会有所帮助:D