doc hash-function-transition: clarify how older gits die on NewHash
authorÆvar Arnfjörð Bjarmason <avarab@gmail.com>
Mon, 26 Mar 2018 18:27:07 +0000 (18:27 +0000)
committerJunio C Hamano <gitster@pobox.com>
Wed, 28 Mar 2018 02:07:51 +0000 (19:07 -0700)
Change the "Repository format extension" to accurately describe what
happens with different versions of Git when they encounter NewHash
repositories, instead of only saying what happens with versions v2.7.0
and later.

See ab9cb76f66 ("Repository format version check.", 2005-11-25) and
00a09d57eb ("introduce "extensions" form of
core.repositoryformatversion", 2015-06-23) for the relevant changes to
the setup code where these variables are checked.

Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/technical/hash-function-transition.txt
index 417ba491d0f3fa06b60a47623a5f756919adcbd6..34396f13eca95ffcf4eba02582cce974d3c3e0a6 100644 (file)
@@ -116,10 +116,15 @@ Documentation/technical/repository-version.txt) with extensions
                objectFormat = newhash
                compatObjectFormat = sha1
 
-Specifying a repository format extension ensures that versions of Git
-not aware of NewHash do not try to operate on these repositories,
-instead producing an error message:
+The combination of setting `core.repositoryFormatVersion=1` and
+populating `extensions.*` ensures that all versions of Git later than
+`v0.99.9l` will die instead of trying to operate on the NewHash
+repository, instead producing an error message.
 
+       # Between v0.99.9l and v2.7.0
+       $ git status
+       fatal: Expected git repo version <= 0, found 1
+       # After v2.7.0
        $ git status
        fatal: unknown repository extensions found:
                objectformat