Skip to content

Releases: not-an-aardvark/every-git-commit-shorthash

Initial release

16 Apr 02:26
Compare
Choose a tag to compare

A pre-generated packfile and index file containing a git commit for every seven-character shorthash.

GitHub has a size limit of 2GB for release assets, but the packfile and index are both larger than 2GB. As a result, they have been split into multiple pieces here. To use the files, download all of the pack-every-shorthash.idx-chunk-*and pack-every-shorthash.pack-chunk-* files here, and then run the following (adjusting the paths as necessary to put the commits in the correct repository):

$ cat pack-every-shorthash.pack-chunk-* > .git/objects/pack/pack-every-shorthash.pack
$ cat pack-every-shorthash.idx-chunk-* > .git/objects/pack/pack-every-shorthash.idx

The top-level merge commit for this packfile (which has all 228 commits as transitive parents) is 68bee79b595699fca8a6bb786b52f8cf070f19bd. After you've assembled the packfile and index, you can work with the repo:

# create a branch at the top-level merge commit
$ git update-ref refs/heads/every-shorthash 68bee79b595699fca8a6bb786b52f8cf070f19bd 

# view the top-level merge commit, along with the OIDs of all the parent merge commits
$ git cat-file commit 68bee79b595699fca8a6bb786b52f8cf070f19bd

The last shorthash to be found in this run was 46f0473. Based on the entropy value in that commit message, it was found after 5259101982 total commit attempts (slightly under the expected amount of 5.36 billion)