Johannes Berg <johannes@xxxxxxxxxxxxxxxx> writes: > The index-pack documentation explicitly states that the pack > name is derived from the sorted list of object names, but > since commit 1190a1acf800 ("pack-objects: name pack files > after trailer hash") that isn't true anymore. > > Be less explicit in the docs as to what the exact output is, > and just say that it's whatever goes into the pack name. > > Also update a comment on write_idx_file() since it no longer > modifies the sha1 variable (it's const now anyway), as noted > by Junio. > > Fixes: 1190a1acf800 ("pack-objects: name pack files after trailer hash") > Signed-off-by: Johannes Berg <johannes@xxxxxxxxxxxxxxxx> > --- > It was reported that bup writes pack files that have a name > different from what git does, and I think it's quite possibly > because of this documentation ... it doesn't actually really > *matter* though, as long as the file is internally consistent > nothing checks that the name also matches the footer. Thanks. > > You can also take this as a bug report and fix the language in > some other, perhaps more precise way, if you prefer :-) > > v2: correct bup list address, oops > v3: don't re-indent, update the comment as well > --- > Documentation/git-index-pack.txt | 4 ++-- > pack-write.c | 5 ++--- > 2 files changed, 4 insertions(+), 5 deletions(-) > > diff --git a/Documentation/git-index-pack.txt b/Documentation/git-index-pack.txt > index 9316d9a80b0d..ac74d058e01d 100644 > --- a/Documentation/git-index-pack.txt > +++ b/Documentation/git-index-pack.txt > @@ -104,8 +104,8 @@ This option cannot be used with --stdin. > NOTES > ----- > > -Once the index has been created, the list of object names is sorted > -and the SHA-1 hash of that list is printed to stdout. If --stdin was > +Once the index has been created, the hash that goes into the name of > +the pack/idx file is printed to stdout. If --stdin was > also used then this is prefixed by either "pack\t", or "keep\t" if a > new .keep file was successfully created. This is useful to remove a > .keep file used as a lock to prevent the race with 'git repack' > diff --git a/pack-write.c b/pack-write.c > index f0017beb9dd4..685d327d800a 100644 > --- a/pack-write.c > +++ b/pack-write.c > @@ -38,9 +38,8 @@ static int need_large_offset(off_t offset, const struct pack_idx_option *opts) > } > > /* > - * On entry *sha1 contains the pack content SHA1 hash, on exit it is > - * the SHA1 hash of sorted object names. The objects array passed in > - * will be sorted by SHA1 on exit. > + * The *sha1 contains the pack content SHA1 hash. > + * The objects array passed in will be sorted by SHA1 on exit. > */ > const char *write_idx_file(const char *index_name, struct pack_idx_entry **objects, > int nr_objects, const struct pack_idx_option *opts,