Skip to content

Commit

Permalink
symref support for import scripts
Browse files Browse the repository at this point in the history
Fix git import script not to assume that .git/HEAD is a symlink.

Signed-off-by: Pavel Roskin <proski@gnu.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
  • Loading branch information
Pavel Roskin authored and Junio C Hamano committed Nov 16, 2005
1 parent c0c35d5 commit 8366a10
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 8 deletions.
3 changes: 1 addition & 2 deletions git-archimport.perl
Original file line number Diff line number Diff line change
Expand Up @@ -410,8 +410,7 @@ END
open HEAD, ">$git_dir/refs/heads/$ps->{branch}";
print HEAD $commitid;
close HEAD;
unlink ("$git_dir/HEAD");
symlink("refs/heads/$ps->{branch}","$git_dir/HEAD");
system('git-update-ref', 'HEAD', "$ps->{branch}");

# tag accordingly
ptag($ps->{id}, $commitid); # private tag
Expand Down
9 changes: 6 additions & 3 deletions git-cvsimport.perl
Original file line number Diff line number Diff line change
Expand Up @@ -437,7 +437,11 @@ ($$)
"Either use the correct '-o branch' option,\n".
"or import to a new repository.\n";

$last_branch = basename(readlink("$git_dir/HEAD"));
open(F, "git-symbolic-ref HEAD |") or
die "Cannot run git-symbolic-ref: $!\n";
chomp ($last_branch = <F>);
$last_branch = basename($last_branch);
close(F);
unless($last_branch) {
warn "Cannot read the last branch name: $! -- assuming 'master'\n";
$last_branch = "master";
Expand Down Expand Up @@ -829,8 +833,7 @@ ($$)
print "DONE; creating $orig_branch branch\n" if $opt_v;
system("cp","$git_dir/refs/heads/$opt_o","$git_dir/refs/heads/master")
unless -f "$git_dir/refs/heads/master";
unlink("$git_dir/HEAD");
symlink("refs/heads/$orig_branch","$git_dir/HEAD");
system('git-update-ref', 'HEAD', "$orig_branch");
unless ($opt_i) {
system('git checkout');
die "checkout failed: $?\n" if $?;
Expand Down
9 changes: 6 additions & 3 deletions git-svnimport.perl
Original file line number Diff line number Diff line change
Expand Up @@ -216,7 +216,11 @@ ($$)
-f "$git_dir/svn2git"
or die "'$git_dir/svn2git' does not exist.\n".
"You need that file for incremental imports.\n";
$last_branch = basename(readlink("$git_dir/HEAD"));
open(F, "git-symbolic-ref HEAD |") or
die "Cannot run git-symbolic-ref: $!\n";
chomp ($last_branch = <F>);
$last_branch = basename($last_branch);
close(F);
unless($last_branch) {
warn "Cannot read the last branch name: $! -- assuming 'master'\n";
$last_branch = "master";
Expand Down Expand Up @@ -766,8 +770,7 @@ sub commit_all {
print "DONE; creating $orig_branch branch\n" if $opt_v and (not defined $opt_l or $opt_l > 0);
system("cp","$git_dir/refs/heads/$opt_o","$git_dir/refs/heads/master")
unless -f "$git_dir/refs/heads/master";
unlink("$git_dir/HEAD");
symlink("refs/heads/$orig_branch","$git_dir/HEAD");
system('git-update-ref', 'HEAD', "$orig_branch");
unless ($opt_i) {
system('git checkout');
die "checkout failed: $?\n" if $?;
Expand Down

0 comments on commit 8366a10

Please sign in to comment.