This cooker handles a single revision history up to a revision id.
It outputs a Git bare repository of the revision, directory and file objects, packed into a tarball.
This implementation uses the dulwich library to handle git objects.
It writes progressively a disk-backed repository in a temporary location before outputting the tarball info the destination in-memory file.
As dulwich tree objects can only be created from the leaves (files) to the root, the tree-processing algorithm iterates in a depth-first fashion.
Further work includes:
- making it ready for production
- output a git bundle which is easier to work with as a git user
Related to T843