git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Bug: git-describe abbrev documentation mentions wrong default

From
MAMartin Mosegaard Amdisen <martinmosegaard@gmail.com>
Date
Aug 3, 2018, 11:16 UTC
Message-ID
<CAAVPhBmg1=dhGPougT2fXPdA+ogenrS8T3YhbpwzTfurxcn+HA@mail.gmail.com>

The documentation for the "git describe --abbrev" flag says that the default value is 7 hexadecimal digits: https://github.com/git/git/blob/master/Documentation/git-describe.txt#L63 and https://git-scm.com/docs/git-describe

I have experienced that sometimes I see 7 digits, but other times more. The behavior seems to have changed in git 2.11.0 ("default abbreviation length"): https://github.com/git/git/blob/aeddbfdfa48443c034a9b28b10dfddf2f71b907f/Documentation/RelNotes/2.11.0.txt

I was able to trigger different behavior using a bash script like the one below:

```sh #!/bin/bash

DIR=test-git-describe rm -rf ${DIR} mkdir ${DIR} cd ${DIR} git init

# One-time test results I have seen:
# 10 tags, 10 * 10 commits: 7 hex digits
# 100 tags, 100 * 100 commits: 8 hex digits
FILE=foo
touch ${FILE}
for i in `seq 1 10`; do
    echo ${i} >> ${FILE}
    git add ${FILE}
    git commit -m "Tag update number ${i} to ${FILE}"
    git tag -m "Version 1.0.${i}" -a 1.0.${i}
    for j in `seq 1 10`; do
        echo ${i}-${j} >> ${FILE}
        git add ${FILE}
        git commit -m "Update number ${i}-${j} to ${FILE}"
    done
done
```
Next: Ævar Arnfjörð Bjarmason
Message 1 of 2 in “Bug: git-describe abbrev documentation mentions wrong default”
  1. Martin Mosegaard AmdisenAug 3, 2018
  2. Ævar Arnfjörð BjarmasonAug 3, 2018

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.