git-unpack-objects [-n] [-q] [-r] <pack-file


Read a packed archive (.pack) from the standard input, expanding the objects contained within and writing them into the repository in "loose" (one object per file) format.

Objects that already exist in the repository will not be unpacked from the pack-file. Therefore, nothing will be unpacked if you use this command on a pack-file that exists within the target repository.

Please see the git-repack documentation for options to generate new packs and replace existing ones.



Only list the objects that would be unpacked, don’t actually unpack them.


The command usually shows percentage progress. This flag suppresses it.


When unpacking a corrupt packfile, the command dies at the first corruption. This flag tells it to keep going and make the best effort to recover as many objects as possible.


Written by Linus Torvalds <>


Documentation by Junio C Hamano


Part of the gitlink:git[7] suite