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

Re: [PATCH] pack.indexversion config option now defaults to 2

From
Nicolas Pitre <nico@cam.org>
Date
Jun 25, 2008, 18:49 UTC
Message-ID
<alpine.LFD.1.10.0806251442500.2979@xanadu.home>
In-Reply-To
<7vd4m66rfp.fsf@gitster.siamese.dyndns.org>
On Tue, 24 Jun 2008, Junio C Hamano wrote:
Show 15 quoted lines
> For the other "usedeltabaseoffset" change, I think the insn in the
> documentation Nico added is reasonable:
> 
> +	By default, linkgit:git-repack[1] creates packs that use
> +	delta-base offset. If you need to share your repository with
> +	git older than version 1.4.4, either directly or via a dumb
> +	protocol such as http, then you need to set this option to
> +	"false" and repack. Access from old git versions over the
> +	native protocol are unaffected by this option.
> 
> except perhaps that the "set false and repack" should be clarified
> further, perhaps like:
> 
> 	... then you need to set this option to "false" and repack using
> 	git that is newer than (and including) v1.5.0.
Actually the first release to support this is v1.4.4 not v1.5.0.
> I am basing the above 1.5.0 on description of b6945f5 (git-repack:
> repo.usedeltabaseoffset, 2006-10-13).

$ git describe --contains b6945f5 v1.4.4-rc1~77^2~2

Show 23 quoted lines
> On the "indexVersion" change, the documentation reads:
> 
> pack.indexVersion::
> 	Specify the default pack index version.  Valid values are 1 for
>  	legacy pack index used by Git versions prior to 1.5.2, and 2 for
>  	the new pack index with capabilities for packs larger than 4 GB
>  	as well as proper protection against the repacking of corrupted
> +	packs.  Version 2 is the default.  Note that version 2 is enforced
> +	and this config option ignored whenever the corresponding pack is
> +	larger than 2 GB.
> 
> which lacks the recovery insn (and it is int strictly the fault of this
> patch, but we should have done this when we introduced the v2 idx).  I
> think a separate paragraph after the above would be necessary and
> sufficient:
> 
> 	If you have an ancient git that does not understand the version 2
> 	`*.idx` file, cloning or fetching over a non native protocol
> 	(e.g. "http" and "rsync") which will copy both `*.pack` file and
> 	corresponding `*.idx` file from the other side may give you a
> 	repository that cannot be accessed with your old git.  If the
> 	`*.pack` file is smaller than 2 GB, however, you can use
> 	`git-index-pack` on the `*.pack` to regenerate the `*.idx` file.

Looks fine to me. Will you amend the patches or do you want me to repost them?

Nicolas
Previous: Mike HommeyNext: Junio C Hamano
Message 9 of 10 in “pack.indexversion config option now defaults to 2”
  1. pack.indexversion config option now defaults to 2Nicolas Pitre, Jun 25, 2008
  2. Linus TorvaldsJun 25, 2008
  3. Junio C HamanoJun 25, 2008
  4. Mike HommeyJun 25, 2008
  5. Junio C HamanoJun 25, 2008
  6. Mike HommeyJun 25, 2008
  7. Nicolas PitreJun 25, 2008
  8. Mike HommeyJun 25, 2008
  9. Nicolas PitreJun 25, 2008
  10. Junio C HamanoJun 25, 2008

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.