2012-01-03 254 views
0

我們一直在使用SVN,開發人員一直在慢慢遷移到git-svn。現在我們準備好了,並完全轉向git(使用gitolite)。我不確定如何將我們的存儲庫遷移到gitolite並保留歷史記錄。我不知道我是否應該嘗試直接轉換svn repo,或者使用我的本地git-svn副本並推送它。如何從git-svn遷移到gitolite並保留歷史記錄

什麼是最好的方法?

回答

1

我建議使用SubGit來將你的Subversion版本庫翻譯成Git。 以下單一命令,應該足以執行轉換:

$ subgit install svn_repos 

後,你會得到Git倉庫中svn_repos/.git或多個Git倉庫中svn_repos/git/(如果你保留多個項目svn_repos)。

然後您可以繼續使用SubGit保留兩個Subversion和Git的訪問,或只是將其卸載,並使用svn_repos因爲只有一個Git倉庫:

$ subgit uninstall svn_repos 

免責聲明:我SubGit的開發商。

+0

感謝您的建議 - 我沒有聽說過該項目。然後,我將如何把這個git回購並推送到gitolite(我是遠程git回購的新手 - 我一直使用svn作爲回購。) – Yehosef 2012-01-03 17:12:09

+0

@Yehosef SubGit是一個新項目,所以不要奇怪你還沒有聽說過它。 – 2012-01-03 21:05:39

+0

至於push:在'subgit install svn_repos'完成翻譯之後,'svn_repos' _becomes_是一個正常的Git倉庫。所以只需運行'git --git-dir = svn_repos/.git push --all gitolite_repos_url'。 – 2012-01-03 21:14:09

1

作爲後續行動,我提出瞭如何從SVN遷移到Gitolite短HOWTO博客文章:看​​

相關問題