Junio C Hamano <gitster@xxxxxxxxx> 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.