Re: [PATCH v3] pack-write/docs: update regarding pack naming

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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,



[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux