【SVN->GIT】專案倉庫遷移,保留commit歷史已錄
阿新 • • 發佈:2021-10-25
需求:
window系統下,將svn倉庫上的專案遷移至Git倉庫上,並保留commit歷史已錄。
前提:
1、工具版本資訊: svn版本 TortoiseSVN 1.13.1, Build 28686 - 64 Bit,GIT版本 2.33.1.window.1
2、學習《svn遷移到git倉庫並保留commit歷史記錄》,傳送門,使用“二”中的方案。
正文:
1、確認系統中安裝的git是否支援,git-svn,低版本git中可能不支援,在Ubuntu中git-svn是作為一個獨立的Package需要額外安裝的。window系統下可以直接安裝我用的git版本,經測可用,無需安裝。
Linux中安裝命令:sudo apt-get install git-svn 環境變數配置:將/usr/lib/git-core配置到你的PATH環境變數中。
2、按文章進行一下幾步操作
1)svn賬號與git賬號對映,user.txt
svn賬號=git賬號名稱<[email protected]>
2)svn轉換為git
git svn clone svn://ip埠/projectname --no-metadata --authors-file=user.txt --trunk=trunk projectname cd projectname
or
git svn clone http://ip埠/projectname --authors-file=user.txt --trunk=trunk projectname cd projectname
ps:未搞懂--no-metadata 引數作用,未使用; user.txt 放置在git base here 所選目錄下即可
執行效果:
接下來交給時間,一直等,知道clone結束
3)新增git倉庫
git remote add origin http://ip埠號/r/virtualSceneICV.git
4)提交到git
git push -u origin master
ps:
若因倉庫資訊填寫有誤,二次修改執行後再進行push時會報錯
解決如下:
1)git remote rm origin
2)git remote add origin ...
3)git push origin master
3、遷移前後效果對比
svn
git