svn2git:无法设置跟踪信息

时间:2013-07-25 07:59:03

标签: git svn2git

我正在尝试使用svn2git的帮助将SVN项目迁移到git。执行命令时,它会退出,并显示以下错误:

Running command: git branch --track "0.0.9" "remotes/svn/0.0.9"
fatal: Cannot setup tracking information; starting point 'remotes/svn/0.0.9' is not a branch. 

开始于:

 svn2git http://<host>/<project>

我找不到任何解决方案,似乎没有多少用户遇到同样的问题。

我该怎么做才能解决这个问题?

4 个答案:

答案 0 :(得分:7)

我使用Debian Sid遇到了同样的问题(“git”的版本是1:1.8.3.2-1)。在我使用股票“git”包(1:1.7.2.5-3)在Debian Squeeze上失败之前。 最后我最终使用了squeeze-backport存储库(1:1.7.10.4-1~bpo60 + 1),现在它可以工作了。

你使用的是什么版本的Git?

答案 1 :(得分:6)

这应该解决它:

更改此行https://github.com/nirvdrum/svn2git/blob/master/lib/svn2git/migration.rb#L319
来自run_command("git branch --track \"#{branch}\" \"remotes/svn/#{branch}\"")
run_command("git branch \"#{branch}\" \"remotes/svn/#{branch}\"") 应该解决它。

至少它对我来说没有任何问题。

您可以在migration.rb下的Windows上找到C:\Ruby200-x64\lib\ruby\gems\2.0.0\gems\svn2git-2.2.2\lib\svn2git文件或类似的内容

https://github.com/nirvdrum/svn2git/issues/132#issuecomment-31453436

答案 2 :(得分:2)

我想在不更改代码的情况下为此添加快速而肮脏的解决方案!

每次出现错误时,只需手动更改分支并继续执行svn2git命令。

所以要完成工作流程:

运行命令

svn2git ....

得到错误

Running command: git branch --track "0.0.9" "remotes/svn/0.0.9"
fatal: Cannot setup tracking information; starting point 'remotes/svn/0.0.9' is not a branch. 

手动更改分支(复制Running command:行并删除--track

branch "0.0.9" "remotes/svn/0.0.9"

继续svn2git

svn2git ...

注意...之后的svn2git是你的svn2git命令

答案 3 :(得分:1)

如果你有少量分支并且不想降级git,这是一种解决问题的方法。运行“git branch -r”以获取分支列表。然后为每个分支运行以下命令(例如,名为svn / next_branch):

$ git branch "next_branch" "remotes/svn/next_branch"

唯一的区别是删除了“--track”选项。

这是适用于此Github Issue

的修复程序