git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] git-cvsimport: fix initial checkout

From
Marc-Andre Lureau <marcandre.lureau@gmail.com>
Date
Mar 13, 2008, 19:09 UTC
Message-ID
<1205435378-10411-1-git-send-email-marcandre.lureau@gmail.com>
git-symbolic-ref HEAD returns master reference, even if the file does
not exists. That prevents the initial checkout and fails in
git-rev-parse. The patch checks the existence of the reference file
before assuming an original branch exists. There might be better
solutions than checking file existence.
---
 git-cvsimport.perl |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/git-cvsimport.perl b/git-cvsimport.perl
index 95c5eec..1512fe4 100755
--- a/git-cvsimport.perl
+++ b/git-cvsimport.perl
@@ -570,12 +570,16 @@ unless (-d $git_dir) {
 	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) {
+	if (-f "$git_dir/$last_branch") {
+	    $last_branch = basename($last_branch);
+	    unless ($last_branch) {
 		warn "Cannot read the last branch name: $! -- assuming 'master'\n";
 		$last_branch = "master";
+	    }
+	} else {
+	    $last_branch = "";
 	}
+	close(F);
 	$orig_branch = $last_branch;
 	$tip_at_start = `git-rev-parse --verify HEAD`;
 
@@ -953,6 +957,7 @@ while (<CVS>) {
 		print "* UNKNOWN LINE * $_\n";
 	}
 }
+
 commit() if $branch and $state != 11;
 
 unless ($opt_P) {
-- 
1.5.4.4.534.gfb90c.dirty
Next: Junio C Hamano
Message 1 of 9 in “git-cvsimport: fix initial checkout”
  1. git-cvsimport: fix initial checkoutMarc-Andre Lureau, Mar 13, 2008
  2. Junio C HamanoMar 13, 2008
  3. Martin LanghoffMar 13, 2008
  4. Marc-André LureauMar 13, 2008
  5. Marc-André LureauMar 13, 2008
  6. Martin LanghoffMar 13, 2008
  7. Junio C HamanoMar 13, 2008
  8. Martin LanghoffMar 13, 2008
  9. Marc-André LureauMar 13, 2008

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.