git problem (was Re: Announcing the X11R7.5 supermodule)

Werner LEMBERG wl at
Sat Sep 12 00:08:57 PDT 2009

[CCing Johannes for this git problem]

>>   $ git submodule update
>>   fatal: Needed a single revision
>>   Unable to find current revision in submodule path 'extras/mesa/mesa'
>> `git pull' works within the `mesa' subdirectory, BTW.
> i have no idea what could be wrong there. Just tried it again here
> and it works fine.  did you run git submodule init?


> do you have auto-rebasing for submodule set in your gitconfig (if
> that can be set?)

I haven't done anything into this direction.

Meanwhile I think this is a bug in (or feature of) git itself (even in
the current git repository of git): During the first run of `git
submodule update', right while handling `extras/mesa/mesa', I pressed
^C since I got the impression that the network connection failed
somehow -- for this repository, after seeing the `remote: Counting
objects' line, it takes an extremely long time before the process
emits `remote: Compressing objects', contrary to all other
repositories in the update run.  [Now I know that this is a side
effect of handling such a big repository.]

Apparently, I must have hit Control-C at a very inconvenient moment
since restarting from then on I got the abovementioned message.  I've
eventually moved the whole `extras/mesa/mesa' directory to a different
place and restarted `git submodule update', and now it has worked
without problems.

Looking at the .git/FETCH_HEAD and .git/HEAD files of the failing and
working repositories, I see (among others) the differences below; I've
massaged the lines to make them shorter.

Johannes, is this a known problem?  Running `git pull --rebase' within
the failing repository works, sort of; after finishing, this message
is displayed:

  You asked me to pull without telling me which branch you
  want to merge with, and 'branch.master.merge' in
  your configuration file does not tell me either.        Please
  specify which branch you want to merge on the command line and
  try again (e.g. 'git pull <repository> <refspec>').



diff -ruN mesa/.git/FETCH_HEAD
---    2009-09-12 08:02:15.000000000 +0200
+++ mesa/.git/FETCH_HEAD        2009-09-12 07:40:41.000000000 +0200
@@ -53,7 +53,7 @@
 030799ed  not-for-merge  branch 'indirect-vbo' of git://.../mesa/mesa
 8f889252  not-for-merge  branch 'intel-2008-q3' of git://.../mesa/mesa
 200fa916  not-for-merge  branch 'intel-2008-q4' of git://.../mesa/mesa
-57d16c4c  not-for-merge  branch 'master' of git://.../mesa/mesa
+57d16c4c    branch 'master' of git://.../mesa/mesa
 fd624c06  not-for-merge  branch 'mesa' of git://.../mesa/mesa
 f990cbc7  not-for-merge  branch 'mesa_20040127_branch' of git://.../mesa/mesa
 ae27f9a6  not-for-merge  branch 'mesa_20040309_branch' of git://.../mesa/mesa

diff -ruN mesa/.git/HEAD
---  2009-09-11 08:58:59.000000000 +0200
+++ mesa/.git/HEAD      2009-09-12 07:40:46.000000000 +0200
@@ -1 +1 @@
-ref: refs/heads/master

More information about the xorg-devel mailing list