2015-05-28 123 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!