我正在尝试将一个项目从SVN迁移到git。这是我使用的命令:
$ git svn clone http://oursvnserver/ --no-metadata -A ../authors-transform.txt --trunk=path/to/trunk --branches=path/to/branches --tags=path/to/tags . --username=mysvnusername --prefix=origin/
当前目录是我想成为存储库的目录。authors-transform.txt
肯定在正确的位置。该项目使用标准布局,但它不存在于存储库的根目录下。(不幸的是,很久以前有人开始将所有项目都塞进同一个存储库。这就是我指定--trunk
、--branches
和--tags
的原因。)它似乎检出没问题。然后我尝试生成一个忽略文件并得到了这个极其难懂的错误:$ git svn show-ignore
config --get svn-remote.svn.fetch :refs/remotes/git-svn$: command returned error: 1
看起来它正在执行一些其他的命令,因此我进行了一些猜测:
$ git config --get svn-remote.svn.fetch :refs/remotes/git-svn || echo $?
1
$ git config --get svn-remote.svn.fetch :refs/remotes/git-svn$ || echo $?
1
所以也许我猜对了它调用的命令?但这并没有真正帮助。
这个错误实际上意味着什么?我该尝试什么来解决它?
使用 msysgit 1.9.4。
--id=origin/trunk
部分使其工作,但我在我的克隆中没有指定任何类似的内容... - Svend Hansen--prefix
参数。;) 如果你没有指定它,origin/
可能是默认值;我不确定。但如果你指定了其他的东西,那么显然你需要调整命令来适应它。 - jpmc26--prefix = origin
,但是对于show-ignore
,我确实需要指定origin/trunk
。如果没有“origin /”,我将得到与以前相同的错误。 - Zilk