From 210569f9aecee4d41420b9d9c8780f5c6bbee3cc Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Tue, 5 Jul 2005 13:19:59 +0200 Subject: git-cvsimport-script: move working directory forward If HEAD happened to point to a cvs branch, move the working directory forward to the tip of the branch. Additionally, if master and "origin" are equal, move master forward to new origin first. diff --git a/git-cvsimport-script b/git-cvsimport-script index 3e6d22e..cdf9891 100755 --- a/git-cvsimport-script +++ b/git-cvsimport-script @@ -372,6 +372,7 @@ chdir($git_tree); my $last_branch = ""; my $orig_branch = ""; +my $forward_master = 0; my %branch_date; my $git_dir = $ENV{"GIT_DIR"} || ".git"; @@ -403,6 +404,21 @@ unless(-d $git_dir) { $last_branch = "master"; } $orig_branch = $last_branch; + if (-f "$git_dir/CVS2GIT_HEAD") { + die <) { unlink($git_index); +if (defined $orig_git_index) { + $ENV{GIT_INDEX_FILE} = $orig_git_index; +} else { + delete $ENV{GIT_INDEX_FILE}; +} + # Now switch back to the branch we were in before all of this happened if($orig_branch) { print "DONE\n" if $opt_v; + system("cp","$git_dir/refs/heads/$opt_o","$git_dir/refs/heads/master") + if $forward_master; + system('git-read-tree', '-m', '-u', 'CVS2GIT_HEAD', 'HEAD'); + die "read-tree failed: $?\n" if $?; } else { $orig_branch = "master"; print "DONE; creating $orig_branch branch\n" if $opt_v; @@ -705,11 +731,7 @@ if($orig_branch) { unless -f "$git_dir/refs/heads/master"; unlink("$git_dir/HEAD"); symlink("refs/heads/$orig_branch","$git_dir/HEAD"); - if (defined $orig_git_index) { - $ENV{GIT_INDEX_FILE} = $orig_git_index; - } else { - delete $ENV{GIT_INDEX_FILE}; - } system('git checkout'); die "checkout failed: $?\n" if $?; } +unlink("$git_dir/CVS2GIT_HEAD"); -- cgit v0.10.2-6-g49f6