Re: [BUG] Git clone of a bundle fails, but works (somewhat) when run with strace
- From
- Alain Kalker <a.c.kalker@gmail.com>
- Date
- Feb 15, 2013, 22:25 UTC
- Message-ID
- <kfmclb$4ro$2@ger.gmane.org>
- In-Reply-To
- <511E8D84.6060601@gmail.com>
On Fri, 15 Feb 2013 20:33:24 +0100, Alain Kalker wrote:
Show 21 quoted lines
> tl;dr: > > - `git bundle create` without <git-rev-list-args> gives git rev-list > help, then dies. > Should point out missing <git-rev-list-args> instead. > - `git clone <bundle> <dir> gives "ERROR: Repository not found." > - `strace ... git clone <bundle> <dir>` (magically) appears to work but > cannot checkout files b/c of nonexistent ref. > - Heisenbug? Race condition? > - Zaphod Beeblebrox has left the building, sulking. > > Full description: > > When I try to clone from a bundle created from a local repository, `git > clone <bundle> <dir>` fails with: "ERROR: Repository not found. fatal: > Could not read from remote repository." unless I run it with strace. > > OS: Arch Linux (rolling release) > Git versions: 1.8.1.3 and git://github.com/git.git master@02339dd > > Steps to reproduce:
For those who like to "save the trees" (source code or otherwise), here is a much simplified test case:
$ # Create test repository with a single commit in it $ mkdir testrepo $ cd testrepo $ git init $ echo Test > test.txt $ git add test.txt $ git commit -m "Add test.txt"
$ # Create bundle $ git bundle create ../testrepo.bundle master
$ # Try to clone from bundle $ cd .. $ git clone testrepo.bundle testrepofrombundle
$ # Clone from bundle, wrapped with strace $ strace -f -o /dev/null git clone testrepo.bundle testrepofrombundle
$ # Examine cloned repository $ cd testrepofrombundle $ ls $ git branch -av $ git checkout master $ git branch -av $ # Where's my HEAD?
> Kind regards, > > Alain Kalker