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

Re: [BUG] git svn accepts to clone an empty SVN repo, but then fails to dcommit

From
EWEric Wong <normalperson@yhbt.net>
Date
Apr 29, 2008, 07:15 UTC
Message-ID
<20080429071552.GH24171@muzzle>
In-Reply-To
<vpq3apbm8k3.fsf@bauges.imag.fr>
Matthieu Moy <Matthieu.Moy@imag.fr> wrote:
Show 20 quoted lines
> Hi,
> 
> All is in the title ;-).
> 
> The command
> 
>   git svn clone (URL of an empty SVN repo here)
> 
> works, creates an empty git repository. I can perform the initial
> commit there, but then, "git svn dcommit" says :
> 
> Use of uninitialized value in concatenation (.) or string at /home/moy/local/usr/bin/git-svn line 414.
> Committing to  ...
> Unable to determine upstream SVN information from HEAD history
> 
> I guess a correct management of the initial commit in git-svn would be
> hard to implement, but at least, the error message can be improved.
> First step is something like the patch below, and better would be for
> "git svn clone" to warn that it won't be able to do much with the
> cloned repo.
Thanks Matthieu,

It shouldn't be *that* hard to implement being able to start an empty SVN repository from scratch, actually. Of course, there are about a billion other things people have been asking for in git-svn that I keep forgetting to implement.

Acked-by: Eric Wong <normalperson@yhbt.net>
Show 20 quoted lines
> diff --git a/git-svn.perl b/git-svn.perl
> index b864b54..9a70c1e 100755
> --- a/git-svn.perl
> +++ b/git-svn.perl
> @@ -410,10 +410,12 @@ sub cmd_dcommit {
>         $head ||= 'HEAD';
>         my @refs;
>         my ($url, $rev, $uuid, $gs) = working_head_info($head, \@refs);
> -       print "Committing to $url ...\n";
> +       if ($url) {
> +               print "Committing to $url ...\n";
> +       }
>         unless ($gs) {
>                 die "Unable to determine upstream SVN information from ",
> -                   "$head history\n";
> +                   "$head history.\nPerhaps the repository is empty.";
>         }
>         my $last_rev;
>         my ($linear_refs, $parents) = linearize_history($gs, \@refs);
> 
-- 
Eric Wong
Previous: Matthieu MoyNext: Matthieu Moy
Message 2 of 4 in “[BUG] git svn accepts to clone an empty SVN repo, but then fails to dcommit”
  1. Matthieu MoyApr 24, 2008
  2. Eric WongApr 29, 2008
  3. Better error message for git svn dcommit on empty repository.Matthieu Moy, May 5, 2008
  4. Matthieu MoyMay 5, 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.