class FilePackIndex(PackIndex):
Known subclasses: dulwich.pack.PackIndex1
, dulwich.pack.PackIndex2
Pack index that is based on a file.
To do the loop it opens the file, and indexes first 256 4 byte groups with the first byte of the sha id. The value in the four byte group indexed is the end of the group that shares the same starting byte. Subtract one from the starting byte and index again to find the start of the group. The values are sorted by sha id within the group, so do the math to find the start and end offset and then bisect in to find if the value is present.
Method | __eq__ |
Undocumented |
Method | __init__ |
Create a pack index object. |
Method | __len__ |
Return the number of entries in this pack index. |
Method | calculate |
Calculate the SHA1 checksum over this pack index. |
Method | check |
Check that the stored checksum matches the actual checksum. |
Method | close |
Undocumented |
Method | get |
Return the SHA1 checksum stored for the corresponding packfile. |
Method | get |
Return the SHA1 checksum stored for this index. |
Method | iterentries |
Iterate over the entries in this pack index. |
Method | object |
Return the index in to the corresponding packfile for the object. |
Property | path |
Undocumented |
Method | _itersha |
Yield all the SHA1's of the objects in the index, sorted. |
Method | _object |
See object_index. |
Method | _read |
Undocumented |
Method | _unpack |
Unpack the crc32 checksum for the ith object from the index file. |
Method | _unpack |
Unpack the i-th entry in the index file. |
Method | _unpack |
Unpack the i-th name from the index file. |
Method | _unpack |
Unpack the i-th object offset from the index file. |
Class Variable | _fan |
Undocumented |
Instance Variable | _contents |
Undocumented |
Instance Variable | _file |
Undocumented |
Instance Variable | _filename |
Undocumented |
Instance Variable | _size |
Undocumented |
Inherited from PackIndex
:
Method | __iter__ |
Iterate over the SHAs in this pack. |
Method | __ne__ |
Undocumented |
Method | object |
Return the SHA1 corresponding to the index in the pack file. |
Method | objects |
Return the hex SHA1 over all the shas of all objects in this pack. |
dulwich.pack.PackIndex1
, dulwich.pack.PackIndex2
Create a pack index object.
Provide it with the name of the index file to consider, and it will map it whenever required.
dulwich.pack.PackIndex.get_pack_checksum
Return the SHA1 checksum stored for the corresponding packfile.
Returns: 20-byte binary digest
dulwich.pack.PackIndex.iterentries
Iterate over the entries in this pack index.
- Returns: iterator over tuples with object name, offset in packfile and
- crc32 checksum.
dulwich.pack.PackIndex.object_index
Return the index in to the corresponding packfile for the object.
Given the name of an object it will return the offset that object lives at within the corresponding pack file. If the pack file doesn't have the object then None will be returned.
dulwich.pack.PackIndex._object_index
See object_index.
Parameters | |
sha | A binary SHA string. (20 characters long)_ |
dulwich.pack.PackIndex1
, dulwich.pack.PackIndex2
Unpack the crc32 checksum for the ith object from the index file.
dulwich.pack.PackIndex1
, dulwich.pack.PackIndex2
Unpack the i-th entry in the index file.
- Returns: Tuple with object name (SHA), offset in pack file and CRC32
- checksum (if known).
dulwich.pack.PackIndex1
, dulwich.pack.PackIndex2
Unpack the i-th name from the index file.
dulwich.pack.PackIndex1
, dulwich.pack.PackIndex2
Unpack the i-th object offset from the index file.