# [BUG REPORT] git-svn fails to create branches if ssh+svn gets used as protocol.

4 messages from 2009-12-22 to 2009-12-23. Participants: Florian Köberle, Eric Wong.
Thread: https://gitlist.dev/t/22005

## Florian Köberle, 2009-12-22 09:53

Subject: [BUG REPORT] git-svn fails to create branches if ssh+svn gets used as protocol.
Message-ID: <4B309730.5070509@fkoeberle.de>
URL: https://gitlist.dev/e/4B309730.5070509%40fkoeberle.de

```
Hello

I haven't seen a link to a bug tracker so I am sending this bug report
to the mailing list, I hope it's okay.

If you try to run
$ git svn branch foo
in a project using a svn+ssh url, you get the following error log:

Copying svn+ssh://example.org/svn/project/trunk at r1000 to
svn+ssh://me@example.org/svn/project/branches/foo...
Trying to use an unsupported feature: Source and dest appear not to be
in the same repository (src: 'svn+ssh://example.org/svn/project/trunk';
dst: 'svn+ssh://me@example.org/svn/project/branches/foo') at
/home/florian/libexec/git-core/git-svn line 722

It fails as the username is missing in the source url. If you modify the
git-svn script and add the username it works. The bug can be reproduced
with git-svn version 1.6.5.7 (svn 1.5.1).

Best regards,
Florian

```

## Eric Wong, 2009-12-23 07:25

Subject: Re: [BUG REPORT] git-svn fails to create branches if ssh+svn gets used as protocol.
Message-ID: <20091223072500.GB4323@dcvr.yhbt.net>
URL: https://gitlist.dev/e/20091223072500.GB4323%40dcvr.yhbt.net
In-Reply-To: <4B309730.5070509@fkoeberle.de>

```
Florian Köberle <florian@fkoeberle.de> wrote:
> Hello
> 
> I haven't seen a link to a bug tracker so I am sending this bug report
> to the mailing list, I hope it's okay.

Hi Florian,

The mailing list is the bug tracker here :)

> If you try to run
> $ git svn branch foo
> in a project using a svn+ssh url, you get the following error log:
> 
> Copying svn+ssh://example.org/svn/project/trunk at r1000 to
> svn+ssh://me@example.org/svn/project/branches/foo...
> Trying to use an unsupported feature: Source and dest appear not to be
> in the same repository (src: 'svn+ssh://example.org/svn/project/trunk';
> dst: 'svn+ssh://me@example.org/svn/project/branches/foo') at
> /home/florian/libexec/git-core/git-svn line 722
> 
> It fails as the username is missing in the source url. If you modify the
> git-svn script and add the username it works. The bug can be reproduced
> with git-svn version 1.6.5.7 (svn 1.5.1).

Thanks for the info, the following patch should help.

I rarely get around to testing against svn+ssh servers myself
(and they don't appear too common compared to http/https).

Let us know how it goes, thanks!

From b2bc7e330209659c20d02ee0ba3785f9f59fd0b2 Mon Sep 17 00:00:00 2001
From: Eric Wong <normalperson@yhbt.net>
Date: Tue, 22 Dec 2009 22:40:18 -0800
Subject: [PATCH] git svn: branch/tag commands detect username in URLs

Signed-off-by: Eric Wong <normalperson@yhbt.net>
---
 git-svn.perl |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/git-svn.perl b/git-svn.perl
index dba0d12..650c9e5 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -663,7 +663,8 @@ sub cmd_branch {
 	}
 	$head ||= 'HEAD';
 
-	my ($src, $rev, undef, $gs) = working_head_info($head);
+	my (undef, $rev, undef, $gs) = working_head_info($head);
+	my $src = $gs->full_url;
 
 	my $remote = Git::SVN::read_all_remotes()->{$gs->{repo_id}};
 	my $allglobs = $remote->{ $_tag ? 'tags' : 'branches' };
-- 
Eric Wong

```

## Florian Köberle, 2009-12-23 19:26

Subject: Re: [BUG REPORT] git-svn fails to create branches if ssh+svn gets used as protocol.
Message-ID: <4B326EE3.5060409@fkoeberle.de>
URL: https://gitlist.dev/e/4B326EE3.5060409%40fkoeberle.de
In-Reply-To: <20091223072500.GB4323@dcvr.yhbt.net>

```
Hello Eric,

your patch works great. I created successfully a branch on a svn+ssh://
repository using the patched git-svn.

Thank you for the patch and the fast reply. I hope the patch find it's
way into the next release.

Best regards,
Florian



Eric Wong wrote:
> Florian Köberle <florian@fkoeberle.de> wrote:
>   
>> Hello
>>
>> I haven't seen a link to a bug tracker so I am sending this bug report
>> to the mailing list, I hope it's okay.
>>     
>
> Hi Florian,
>
> The mailing list is the bug tracker here :)
>
>   
>> If you try to run
>> $ git svn branch foo
>> in a project using a svn+ssh url, you get the following error log:
>>
>> Copying svn+ssh://example.org/svn/project/trunk at r1000 to
>> svn+ssh://me@example.org/svn/project/branches/foo...
>> Trying to use an unsupported feature: Source and dest appear not to be
>> in the same repository (src: 'svn+ssh://example.org/svn/project/trunk';
>> dst: 'svn+ssh://me@example.org/svn/project/branches/foo') at
>> /home/florian/libexec/git-core/git-svn line 722
>>
>> It fails as the username is missing in the source url. If you modify the
>> git-svn script and add the username it works. The bug can be reproduced
>> with git-svn version 1.6.5.7 (svn 1.5.1).
>>     
>
> Thanks for the info, the following patch should help.
>
> I rarely get around to testing against svn+ssh servers myself
> (and they don't appear too common compared to http/https).
>
> Let us know how it goes, thanks!
>
> From b2bc7e330209659c20d02ee0ba3785f9f59fd0b2 Mon Sep 17 00:00:00 2001
> From: Eric Wong <normalperson@yhbt.net>
> Date: Tue, 22 Dec 2009 22:40:18 -0800
> Subject: [PATCH] git svn: branch/tag commands detect username in URLs
>
> Signed-off-by: Eric Wong <normalperson@yhbt.net>
> ---
>  git-svn.perl |    3 ++-
>  1 files changed, 2 insertions(+), 1 deletions(-)
>
> diff --git a/git-svn.perl b/git-svn.perl
> index dba0d12..650c9e5 100755
> --- a/git-svn.perl
> +++ b/git-svn.perl
> @@ -663,7 +663,8 @@ sub cmd_branch {
>  	}
>  	$head ||= 'HEAD';
>  
> -	my ($src, $rev, undef, $gs) = working_head_info($head);
> +	my (undef, $rev, undef, $gs) = working_head_info($head);
> +	my $src = $gs->full_url;
>  
>  	my $remote = Git::SVN::read_all_remotes()->{$gs->{repo_id}};
>  	my $allglobs = $remote->{ $_tag ? 'tags' : 'branches' };
>   

```

## Eric Wong, 2009-12-23 20:03

Subject: Re: [BUG REPORT] git-svn fails to create branches if ssh+svn gets used as protocol.
Message-ID: <20091223200328.GA11521@dcvr.yhbt.net>
URL: https://gitlist.dev/e/20091223200328.GA11521%40dcvr.yhbt.net
In-Reply-To: <4B326EE3.5060409@fkoeberle.de>

```
Florian Köberle <florian@fkoeberle.de> wrote:
> Hello Eric,
> 
> your patch works great. I created successfully a branch on a svn+ssh://
> repository using the patched git-svn.
> 
> Thank you for the patch and the fast reply. I hope the patch find it's
> way into the next release.

Hi Florian, thanks for the report and testing the fix.

I've just pushed the that commit and Robert's test for Junio to pull at
git://git.bogomips.org/git-svn

Eric Wong (1):
      git svn: branch/tag commands detect username in URLs

Robert Zeh (1):
      git svn: add test for a git svn gc followed by a git svn mkdirs

-- 
Eric Wong

```
