From: Junio C Hamano Date: Wed, 13 Jan 2021 08:54:52 GMT Subject: Re: [PATCH 01/20] pack-revindex: introduce a new API Message-ID: In-Reply-To: Junio C Hamano writes: > Without knowing what exactly "pack position", "offset" and "index > position" refer to, the above three are almost impossible to grok. > Can we have one paragraph description for each? Something along the > lines of... > > - Pack position: a packstream consists of series of byte ranges, > each of which represents an object, so the objects can be > numbered from 0 (the object whose data is stored at the earliest > part in the packfile) to N (the object whose data is stored at > the tail end of the packfile). The number corresponding to an > object in this order in the packfile is called the "pack > position" of the object. > > - Offset: The ofs_t distance between the beginning of a pack stream > and the beginning of data that represents an object is called the > "offset" of the object in the packfile. > > - Index position: for a single pack stream, there is a table that > maps object name to its offset and the entries in this table are > sorted by the object name (this is what pack ".idx" file is). > The location (counting from 0) of an object in this table is > called the "index position" of the object in the packfile. > > I am not sure if the above correctly reflects what you meant by > "position", though. Please scratch the above. I see Peff already pointed out pretty much the same, and his phrasing looked a lot cleaner than my attempt. Thanks.