Tim Shepard <shep@xxxxxxxxxxxx> writes: > I have git 1.5.6.5 installed from the Debian/lenny package. > > Poking around in http://git.kernel.org/ looking for a git repository > that might have the latest -rt development happening, I found > > http://git.kernel.org/?p=linux/kernel/git/rostedt/linux-2.6-rt.git > > which looked promising. > > But when I tried cloning it using: > > git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-rt.git linux-2.6-rt > > it pulled several hundred megabytes through my (rather slow) DSL line > and then printed out > > error: Trying to write ref refs/tags/v2.6.11 with nonexistant object 5dc01c595e6c6ec9ccda4f6f69c131c0dd945f8c > fatal: Cannot update the ref 'refs/tags/v2.6.11'. > > and then removed everything it had just pulled. > > Looking at http://git.kernel.org/?p=linux/kernel/git/rostedt/linux-2.6-rt.git;a=tags > I see that apparently v2.6.11 and v.2.6.11-tree both point at a tree > object and not a commit. > > Is this a bug in git? It is not a problem for the tag pointing to a tree, but linux-2.6-rt.git tree uses (like everybody else) objects/alternates to borrow objects from the repository of Linus. I think we lost the alternate object store support when git-fetch was rewritten from the original shell script (that did support fetching from such a repository over rsync:// transport) to a reimplementation in C, with commit b888d61 (Make fetch a builtin, 2007-09-10). Later, cd547b4 (fetch/push: readd rsync support, 2007-10-01) attempted to resurrect some rsync support (b888d61 lost rsync support completely for git-fetch), but introduced these lines in transport.c: /* NEEDSWORK: handle one level of alternates */ result = run_command(&rsync); These have not been touched ever since, and then finally commit 8434c2f (Build in clone, 2008-04-27) killed support of cloning from a repository that uses alternates for rsync transport for git-clone (before that, the shell script version had a special case to still allow such operation over rsync). It appears practically nobody uses rsync:// transport anymore these days; you are unfortunately the first one who noticed it. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html