From: Alain Kalker Date: Sun, 17 Feb 2013 19:28:33 GMT Subject: Git bundles for backup and cloning: the Zaphod Beeblebrox thread Message-ID: >From the current documentation for git-bundle(1), it may not be clear for users unfamilliar with Git, how to create a bundle which can be used for backup purposes, or, more generally, to clone to a completely new repository. Philip Oakley has posted a documentation patch some time ago, but Junio has pointed out several concerns. Ref: http://thread.gmane.org/gmane.comp.version-control.git/205887/ focus=205897 Here's my attempt to summarize the concerns, adding some of my own, and a possible solution. 1. "Missing HEAD syndrome" $ git bundle create master -or- $ git bundle create -or- $ git bundle create --branches -then- $ git clone will be unable to checkout any files due to a missing ref for HEAD. Though this can be fixed by going into and doing `git checkout `, this is not very user-friendly. 2. "Detached HEAD syndrome" $ git bundle create HEAD $ git clone will checkout files alright, but leaves one in a "detached HEAD" state. 3. "Exploding HEAD syndrome" $ git bundle create --all will add the HEAD, but will add refs from refs/remotes/* too, which is not desirable when cloning, unless one sets up all the remotes (e.g. by restoring .git/config) as well. Finally, my solution for backing up only the local branches of a repository: $ git bundle create --branches HEAD but this may not be very easy for new users to figure out on their own unless well documented (perhaps a new flag?) Any comments or suggestions (including HHGTTG references!) are very welcome. -Alain