2015-05-28 89 views
0

我在Windows上运行svn2git,并希望从迁移过程中排除一些分支。这是如何实现的?如何用svn2git排除某些分支?

+0

到目前为止试过的是什么? – tharif

+0

我尝试使用--exclude _branchname_但它会导致错误。运行命令:git svn fetch'--ignore-paths = ^(?: trunk [/] | tags [/] [^ /] + [/] |分支[/] [^ /] + [/])(? :Alerts | API)' '标签['不被识别为内部或外部命令, 可操作程序或批处理文件。 – Jacob

+0

你有没有试过https://github.com/mazong1123/svn2gitnet?如果它仍然失败,请提交问题,我可以提供帮助。 –

回答

0

svn2git从排除标签中生成一个正则表达式,该标签将它送入它的--ignore-paths参数。

不幸的是,这个正则表达式包含DOS保留字符 - 像[] |等 - 这些都没有逃脱。

我首先尝试使用生成的正则表达式来创建一个正确转义的正则表达式来创建我自己的--ignore-paths参数,但DOS的保留字符/转义系统是一个真正的噩梦。

解决方案 - >使用的Linux发行版或安装Cygwin的Windows系统上:

  • 安装Cygwin,红宝石包

  • 创业板安装svn2git

  • CD的/ usr /本地/ bin

  • ln -s/home/< user> /。gem/ruby​​/gems/svn2git-2.3.2/bin/svn2git

  • CD/cygdrive/C/<目标回购>

现在,您可以根据需要运行与尽可能多的--exclude参数svn2git!