# [BUG?] fail to svn clone debian's kernel repository

7 messages from 2009-06-10 to 2010-03-04. Participants: Uwe Kleine-König, Sebastian Pipping, Nicolas Sebrecht, Thomas Rast.
Thread: https://gitlist.dev/t/19767

## Uwe Kleine-König, 2009-06-10 16:05

Subject: [BUG?] fail to svn clone debian's kernel repository
Message-ID: <20090610160524.GA24435@pengutronix.de>
URL: https://gitlist.dev/e/20090610160524.GA24435%40pengutronix.de

```
Hello,

using git v1.6.3.1 from Debian I fail to successfully run

	git svn clone svn://svn.debian.org/kernel/dists/trunk/linux-2.6

It runs for some time and then ends in:

	...
	r4695 = f552d98386b301cbeaa3b5a20f9e9d5d3c9c4886 (git-svn)
		M	debian/arch/alpha/defines
	r4696 = 18c0a37de057d24955b66e8f49db0791f6018288 (git-svn)
	Found possible branch point: svn://svn.debian.org/kernel/dists/sid/linux-2.6 => svn://svn.debian.org/kernel/dists/trunk/linux-2.6, 4731
	Initializing parent: git-svn@4731
	W: Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item: File not found: revision 101, path '/dists/sid/linux-2.6'
	W: Do not be alarmed at the above message git-svn is just searching aggressively for old history.
	This may take a while on large repositories
	Found possible branch point: svn://svn.debian.org/kernel/dists/sid/kernel/linux-2.6 => svn://svn.debian.org/kernel/dists/sid/linux-2.6, 4094
	Initializing parent: git-svn@4094
	Found branch parent: (git-svn@4731) e71da640593b63647fb23f915acee03f02fbaa98
	Following parent with do_switch
	Invalid filesystem path syntax: Cannot replace a directory from within at /usr/lib/git-core/git-svn line 4388

Is someone wants to take a look, the repo is browsable at

	http://svn.debian.org/wsvn/kernel/dists/trunk/#_dists_trunk_

Best regards
Uwe

-- 
Pengutronix e.K.                              | Uwe Kleine-König            |
Industrial Linux Solutions                    | http://www.pengutronix.de/  |

```

## Uwe Kleine-König, 2009-06-10 18:42

Subject: Re: [BUG?] fail to svn clone debian's kernel repository
Message-ID: <20090610184256.GA11507@pengutronix.de>
URL: https://gitlist.dev/e/20090610184256.GA11507%40pengutronix.de
In-Reply-To: <20090610160524.GA24435@pengutronix.de>

```
Hello,

> using git v1.6.3.1 from Debian I fail to successfully run
> 
> 	git svn clone svn://svn.debian.org/kernel/dists/trunk/linux-2.6
> 
> It runs for some time and then ends in:
> 
> 	...
> 	r4695 = f552d98386b301cbeaa3b5a20f9e9d5d3c9c4886 (git-svn)
> 		M	debian/arch/alpha/defines
> 	r4696 = 18c0a37de057d24955b66e8f49db0791f6018288 (git-svn)
> 	Found possible branch point: svn://svn.debian.org/kernel/dists/sid/linux-2.6 => svn://svn.debian.org/kernel/dists/trunk/linux-2.6, 4731
> 	Initializing parent: git-svn@4731
> 	W: Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item: File not found: revision 101, path '/dists/sid/linux-2.6'
> 	W: Do not be alarmed at the above message git-svn is just searching aggressively for old history.
> 	This may take a while on large repositories
> 	Found possible branch point: svn://svn.debian.org/kernel/dists/sid/kernel/linux-2.6 => svn://svn.debian.org/kernel/dists/sid/linux-2.6, 4094
> 	Initializing parent: git-svn@4094
> 	Found branch parent: (git-svn@4731) e71da640593b63647fb23f915acee03f02fbaa98
> 	Following parent with do_switch
> 	Invalid filesystem path syntax: Cannot replace a directory from within at /usr/lib/git-core/git-svn line 4388
I debugged this a bit by adding a print just before line 4388.  There we
have:

	rev_a=4090
	rev_b=4095
	path=""
	full_url=svn://svn.debian.org/kernel/dists/sid/kernel/linux-2.6
	old_url=svn://svn.debian.org/kernel/dists/sid/kernel/linux-2.6

Mmh, these are really heavy commits it seems.  The commitlog suggests
that trunk was moved there, and websvn dies with ENOMEM when trying to
show the diff.

I will try to start cloning at a later revision.

Best regards
Uwe

-- 
Pengutronix e.K.                              | Uwe Kleine-König            |
Industrial Linux Solutions                    | http://www.pengutronix.de/  |

```

## Sebastian Pipping, 2010-03-01 02:08

Subject: Re: [BUG?] fail to svn clone debian's kernel repository
Message-ID: <4B8B21A8.6000603@hartwork.org>
URL: https://gitlist.dev/e/4B8B21A8.6000603%40hartwork.org
In-Reply-To: <20090610160524.GA24435@pengutronix.de>

```
On 06/10/09 18:05, Uwe Kleine-König wrote:
> Hello,
> 
> using git v1.6.3.1 from Debian I fail to successfully run
> 
> 	git svn clone svn://svn.debian.org/kernel/dists/trunk/linux-2.6
> 
> It runs for some time and then ends in:
> 
> 	...
> 	r4695 = f552d98386b301cbeaa3b5a20f9e9d5d3c9c4886 (git-svn)
> 		M	debian/arch/alpha/defines
> 	r4696 = 18c0a37de057d24955b66e8f49db0791f6018288 (git-svn)
> 	Found possible branch point: svn://svn.debian.org/kernel/dists/sid/linux-2.6 => svn://svn.debian.org/kernel/dists/trunk/linux-2.6, 4731
> 	Initializing parent: git-svn@4731
> 	W: Ignoring error from SVN, path probably does not exist: (160013): Filesystem has no item: File not found: revision 101, path '/dists/sid/linux-2.6'
> 	W: Do not be alarmed at the above message git-svn is just searching aggressively for old history.
> 	This may take a while on large repositories
> 	Found possible branch point: svn://svn.debian.org/kernel/dists/sid/kernel/linux-2.6 => svn://svn.debian.org/kernel/dists/sid/linux-2.6, 4094
> 	Initializing parent: git-svn@4094
> 	Found branch parent: (git-svn@4731) e71da640593b63647fb23f915acee03f02fbaa98
> 	Following parent with do_switch
> 	Invalid filesystem path syntax: Cannot replace a directory from within at /usr/lib/git-core/git-svn line 4388

I have run into a similar problem, both with Git 1.7.0 as well as with
Git via Git.

Has anybody been able to work around this?
Is anybody working on a fix?

Thanks,



Sebastian

```

## Nicolas Sebrecht, 2010-03-02 19:54

Subject: [BUG?] Re: fail to svn clone debian's kernel repository
Message-ID: <20100302195454.GB12942@vidovic>
URL: https://gitlist.dev/e/20100302195454.GB12942%40vidovic
In-Reply-To: <4B8B21A8.6000603@hartwork.org>

```
The 01/03/10, Sebastian Pipping wrote:
> On 06/10/09 18:05, Uwe Kleine-König wrote:
> > Hello,
> > 
> > using git v1.6.3.1 from Debian I fail to successfully run
> > 
> > 	git svn clone svn://svn.debian.org/kernel/dists/trunk/linux-2.6
> > 
> > It runs for some time and then ends in:
> > 
> > 	...
> > 	r4695 = f552d98386b301cbeaa3b5a20f9e9d5d3c9c4886 (git-svn)
> > 		M	debian/arch/alpha/defines
> > 	r4696 = 18c0a37de057d24955b66e8f49db0791f6018288 (git-svn)

<...>

> > 	Invalid filesystem path syntax: Cannot replace a directory from within at /usr/lib/git-core/git-svn line 4388
> 
> I have run into a similar problem, both with Git 1.7.0 as well as with
> Git via Git.
> 
> Has anybody been able to work around this?
> Is anybody working on a fix?

I've stopped cloning at r10252 with current next version. I didn't
notice any problem.

Does the tests pass for you ?

  $ cd t
  $ make

-- 
Nicolas Sebrecht

```

## Sebastian Pipping, 2010-03-03 01:20

Subject: Re: [BUG?] Re: fail to svn clone debian's kernel repository
Message-ID: <4B8DB940.9020609@hartwork.org>
URL: https://gitlist.dev/e/4B8DB940.9020609%40hartwork.org
In-Reply-To: <20100302195454.GB12942@vidovic>

```
On 03/02/10 20:54, Nicolas Sebrecht wrote:
> I've stopped cloning at r10252 with current next version. I didn't
> notice any problem.

I've been working with another repository.

My case is reproducable as following:
=======================================================
ABS_SVN_SOURCE="$PWD/portage-anon-svn-repo-dump/"
rsync -r rsync://anonvcs.gentoo.org/vcs-public-svnroot/portage/ \
  "${ABS_SVN_SOURCE}"
mkdir portage-git
cd portage-git
git svn init file://"${ABS_SVN_SOURCE}" \
  --trunk=trunk --tags=NOTAGS --branches=NOBRANCHES
git svn fetch -r1:1890
git config --remove-section 'svn-remote.svn'
git svn init file://"${ABS_SVN_SOURCE}" \
  --trunk=main/trunk --tags=main/tags --branches=main/branches
git svn fetch -r1891:HEAD
=======================================================

The last command the fails with:
=======================================================
Found possible branch point:
file:///home/sping/__playground/portage-git-playground/portage-anon-svn-repo-dump/main/trunk
=>
file:///home/sping/__playground/portage-git-playground/portage-anon-svn-repo-dump/main/branches/savior,
1890
Found branch parent: (refs/remotes/savior)
3d100e8bd4e84f2779af6217cf60ebd168647733
Following parent with do_switch
Invalid filesystem path syntax: Cannot replace a directory from within
at /usr/libexec/git-core/git-svn line 5089
=======================================================

# git --version
git version 1.7.0.1.61.gdc05d.dirty


> Does the tests pass for you ?
> 
>   $ cd t
>   $ make

master
  fixed   1
  success 5657
  failed  0
  broken  16
  total   5674

next
  fixed   1
  success 5732
  failed  0
  broken  16
  total   5758

# git branch -v
  branch-master dc05d73 Merge branch 'maint'
* master        dc05d73 Merge branch 'maint'
  next          6604fd0 Merge branch 'jn/makedepend' into next



Sebastian

```

## Thomas Rast, 2010-03-03 14:33

Subject: Re: [BUG?] Re: fail to svn clone debian's kernel repository
Message-ID: <201003031533.13056.trast@student.ethz.ch>
URL: https://gitlist.dev/e/201003031533.13056.trast%40student.ethz.ch
In-Reply-To: <4B8DB940.9020609@hartwork.org>

```
On Wednesday 03 March 2010 02:20:00 Sebastian Pipping wrote:
> git svn init file://"${ABS_SVN_SOURCE}" \
>   --trunk=trunk --tags=NOTAGS --branches=NOBRANCHES
> git svn fetch -r1:1890
> git config --remove-section 'svn-remote.svn'
> git svn init file://"${ABS_SVN_SOURCE}" \
>   --trunk=main/trunk --tags=main/tags --branches=main/branches
> git svn fetch -r1891:HEAD
[...]
> Invalid filesystem path syntax: Cannot replace a directory from within
> at /usr/libexec/git-core/git-svn line 5089

While arguably[*] a bug, you can work around it by simply not removing
the previous trunk from git-svn's 'fetch' lines.  I.e., the following
config works for me after r1890:

[svn-remote "svn"]
	url = file:///.../portage-anon-svn-repo-dump
	fetch = main/trunk:refs/remotes/trunk2
	branches = main/branches/*:refs/remotes/branches/*
	tags = main/tags/*:refs/remotes/tags/*
	fetch = trunk:refs/remotes/trunk

You can later use update-ref (or even just mv) to rename trunk2 to
trunk.

You may also want to place the cutoff in the above commands at
1889/1890 instead, since r1890 is the one that does the move.
Combining this fix with the above config results in correct
"continuous" history of trunk, whereas merely using the config above
results in a disconnect at the move.


[*] SVN also fails if you check out trunk@1889 and attempt to 'svn update' it

-- 
Thomas Rast
trast@{inf,student}.ethz.ch

```

## Sebastian Pipping, 2010-03-04 02:03

Subject: Re: [BUG?] Re: fail to svn clone debian's kernel repository
Message-ID: <4B8F14E7.5050000@hartwork.org>
URL: https://gitlist.dev/e/4B8F14E7.5050000%40hartwork.org
In-Reply-To: <201003031533.13056.trast@student.ethz.ch>

```
On 03/03/10 15:33, Thomas Rast wrote:
> Combining this fix with the above config results in correct
> "continuous" history of trunk, whereas merely using the config above
> results in a disconnect at the move.

Thanks for your time to look into that!

After applying your ideas (which seem to work well) I end up with:
==================================================================
git svn init file://"${ABS_SVN_SOURCE}"
git config svn-remote.svn.fetch 'trunk:refs/remotes/trunk@1889'
git svn fetch -r1:1889
git svn init file://"${ABS_SVN_SOURCE}" \
  --trunk=main/trunk
git config svn-remote.svn.tags 'main/tags/*:refs/tags/*'
git config svn-remote.svn.branches 'main/branches/*:refs/heads/*'
git svn fetch -r1890:HEAD
==================================================================

.git/config holds:
==================================================================
[..]
[svn-remote "svn"]
        url = file:///[..]/portage-anon-svn-repo-dump
        fetch = trunk:refs/remotes/trunk@1889
        fetch = main/trunk:refs/remotes/trunk
        tags = main/tags/*:refs/tags/*
        branches = main/branches/*:refs/heads/*
==================================================================

Thought I'd paste that if anybody else is interested.



Sebastian

```
