开发者

git-svn clone or svn2git unexpectedly stopping

I am trying to migrate from git to svn with the following command:

git svn clone --stdlayout https://my_sourcecontrol

or with git2svn

svn2git --notags https://sourcecontrol -v

During the migration, it j开发者_运维技巧ust stops with the following statement:

W: -empty_dir: directory

When I do a git branch -a

I see it has imported the tags and a number of branches that were deleted some time ago. Also, it has not imported any of the existing branches only the ones that were deleted some time ago.

Can anyone shed any light on what is going on?


You could experiment a bit with a smaller clone, only doing one branch at first to see if that works, for example.

I've seen a similar problem: After running for a couple of minutes, git-svn fetch (which runs under the hood of git svn clone) halts with "signal 13".

I don't see any error message in your output, but maybe it's different on Windows or something. Nonetheless, running git svn fetch should pick up where it left off. I made a little shell-script loop to run fetch until it's done (you need cygwin/*nix to run this):

while ! git svn fetch; do echo "git-svn halted. Restarting...i"; done


This powershell version of the above *nix script worked for me:

$i = 1
do
{
    git svn fetch
    if( !$? )
    {
        Write-Host "git-svn halted. Restarting... $i++"
    }
    else
    {
        Write-Host "git-svn completed successfully"
    }
}
while( !$? )
Write-Host "git-svn fetch required $i iteration(s)"


I had a similar problem.

In the early days of the SVN repo, I was using the default file structure of a trunk/ and tags/ folder at the top level. At a later date, I switched to a <project name>/trunk, <project name>/tags structure with multiple projects.

So using the --stdlayout switch only resulted in the earlier code being migrated (because the <project name>/* files were ignored).

Using -t <project name>/tags and -T <project name>/trunk solved the problem.


It might be a case of SIGPIPE.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=526989

Upgrade git to something like 1.8 or higher. I was getting this bug with 1.7 (since stable Debian has really old packages) and had to install latest git from source, which is 2.1.0.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜