svn 遷移至git操作手冊 項目交付,、版本管理工具變更等情況下,,遷移svn舊歷史記錄有很大必要,方便后續(xù)追蹤文件的提交歷史,,文件修改記錄比對等,。git自帶了從svn遷移至git的工具命令,可很好的對svn上的提交歷史做遷移和映射,,操作簡單方便,。但是初次接觸不熟練,這里做一個總結(jié)和記錄,,內(nèi)容盡量簡單化,。爭取提供給剛剛接觸git和準備遷移的用戶一個簡單易懂的方案。 遷移流程圖: 這里分為兩步來說明,,第一步是比較簡單遷移要件準備,,已經(jīng)準備好的用戶可直接略過,直接進入第二步進行遷移操作,。 |第一步:準備工作: ① svn項目(SvnProject)地址及訪問此svn項目權(quán)限賬號: 地址:https:///svn/project/Example/ SvnProject / 賬號:test/test@123 ② git新建一個倉庫(如:GitProject)存放遷移項目 遠程倉庫地址:https://192.165.22.33/migrate/GitProject 賬號/密碼: my_test/mytest@123 ③ 待遷移svn項目有過提交記錄的用戶清單:
“=”前為svn賬號,“=”號后為git賬號,,尖括號為git用戶的郵箱,,尖括號及郵箱可無。 注:如果有些用戶已經(jīng)離職了,,其賬號在git中沒有,,這里依然可以映射至不存在的git用戶。 如果SVN用戶未全部列舉,,執(zhí)行遷移時會報如下錯誤:
報這個錯誤時可簡單粗暴刪除文件夾重新導(dǎo)出即可,。 ④ :電腦上安裝git客戶端,客戶端下載地址: 下載后安裝客戶端,,安裝及配置參考: https://blog.csdn.net/u013295518/article/details/78746007 |第二步:數(shù)據(jù)遷移 在你存放users.txt的同級目錄新建一個文件,命名為你的項目名:GitProject
右鍵文件空白處,單擊Git Bash Here
在bash界面,,輸入git拷貝命令: git svn clone https:///svn/project/Example/MyProject/ --no-metadata --authors-file=users.txt GitProject
參數(shù)說明:
第一次操作,會多次要求賬號密碼:請注意每次提示信息,,第一次密碼輸入是操作系統(tǒng)的用戶密碼,,第二次為svn賬號和密碼,第三次為git的賬號密碼,。注意按提示輸入,。 二:關(guān)聯(lián)git遠程倉庫 執(zhí)行 進入遷移項目路徑下: 執(zhí)行: 后即已關(guān)聯(lián)遠程git倉庫,執(zhí)行可查看關(guān)聯(lián)情況 未關(guān)聯(lián)時:
關(guān)聯(lián)成功后:
如果關(guān)聯(lián)錯了,,可以使用 git remote rm origin刪除錯位關(guān)聯(lián)后重新關(guān)聯(lián)即可 三:提交記錄至git svn項目中的所有提交記錄和歷史版本都已經(jīng)導(dǎo)出本地并關(guān)聯(lián)了遠程倉庫,,現(xiàn)在只需要將這些記錄推送至遠程倉庫即可。 執(zhí)行 命令輸入后需要輸入git賬號\密碼 執(zhí)行成功后,,就完成了整個遷移過程,。登錄git網(wǎng)站,可以看到空白倉庫中多了很多提交記錄和文件,。 引用資料: github推送項目常見錯誤fatal: remote origin already existshttps://blog.csdn.net/dreamskyforjava/article/details/24322533 Git 與其他系統(tǒng) - Git 與 Subversionhttps:///book/zh/v1/Git-%E4%B8%8E%E5%85%B6%E4%BB%96%E7%B3%BB%E7%BB%9F-Git-%E4%B8%8E-Subversion |
|