Code

contrib/git-svn: create a more recent master if one does not exist
authorEric Wong <normalperson@yhbt.net>
Fri, 3 Mar 2006 09:20:09 +0000 (01:20 -0800)
committerJunio C Hamano <junkio@cox.net>
Fri, 3 Mar 2006 19:27:25 +0000 (11:27 -0800)
In a new repository, the initial fetch creates a master branch
if one does not exist so HEAD has something to point to.

It now creates a master at the end of the initial fetch run,
pointing to the latest revision.  Previously it pointed to the
first revision imported, which is generally less useful.

Signed-off-by: Eric Wong <normalperson@yhbt.net>
Signed-off-by: Junio C Hamano <junkio@cox.net>
contrib/git-svn/git-svn.perl

index 5d547e8c4cba60525c8ce5eeef15fdea5f04549d..69b6be33e7d19e3b60fee0d973ac107bba4ce3a9 100755 (executable)
@@ -224,9 +224,6 @@ sub fetch {
                sys(@svn_co, $SVN_URL, $SVN_WC);
                chdir $SVN_WC or croak $!;
                $last_commit = git_commit($base, @parents);
-               unless (-f "$GIT_DIR/refs/heads/master") {
-                       sys(qw(git-update-ref refs/heads/master),$last_commit);
-               }
                assert_svn_wc_clean($base->{revision}, $last_commit);
        } else {
                chdir $SVN_WC or croak $!;
@@ -242,6 +239,9 @@ sub fetch {
                $last_commit = git_commit($log_msg, $last_commit, @parents);
        }
        assert_svn_wc_clean($last_rev, $last_commit);
+       unless (-e "$GIT_DIR/refs/heads/master") {
+               sys(qw(git-update-ref refs/heads/master),$last_commit);
+       }
        return pop @$svn_log;
 }