1. 安裝git,安裝svn命令列工具(安裝svn時勾選選項),並安裝git bash, 開啟git bash
2. svn log -q | awk -f '|' '/^r/ ' | sort -u > users.txt
這個時候,應該在我們的svn目錄內生成了乙個users.txt檔案,內容大致是這樣子的:注意一定要收集到所有提交者,如果沒有的話,手動新增到users.txt,
否則git-svn clone時不能收集到所有資訊
dl.wang01 = dl.wang01
kw.hou01 = kw.hou01
liuxia03 = liuxia03
3. git svn clone --stdlayout --no-metadata --no-minimize-url --prefix="" -a users.txt -r 368594:head https://svn.您的svn位址.com/ ./
// 關於如果檢視svn提交的版本,可以用小烏龜檢視,右鍵-show log,然後 revision 列就是我們提交的版本號
// 當然,也可以全部保留日誌,只是會從第乙個版本,一條條的檢索,如果提交記錄很多,會花很長時間
// 建議指定版本號,不然貌似會從整個svn根目錄提取資訊,很慢
// 注意svn形式,如果你的svn是:請使用會自動生成所有branch和tag
4. 如果只是想clone特定分支,使用:git svn clone --no-metadata -a users.txt -r 368594:head https:
5. git for-each-ref refs/remotes/tags | cut -d / -f 4- | grep -v @ | while read tagname; do git tag "$tagname" "tags/$tagname"; git branch -r -d "tags/$tagname"; done
6. git for-each-ref refs/remotes | cut -d / -f 3- | grep -v @ | while read branchname; do git branch "$branchname" "refs/remotes/$branchname"; git branch -r -d "$branchname"; done
7. git remote add origin git@my-git-server:myrepository.git
8. git push origin --all
9. git push origin --tags
svn倉庫分模組遷移到git倉庫
git專案跟蹤到子模組倉庫 參考鏈結 公司要求將現有svn伺服器上的專案全部遷徙到gitlab伺服器上由運維部門統一管理。剛開始也是網上找資料,網上關於這方面文章非常多,找了幾篇比較寫的詳細文章按照步驟一步一步做,最後都沒有成功,主要原因網上文章都是很早之前寫的,有些命令在新版git上面執行出錯,另...
從SVN遷移到git倉庫
1.將svn中的專案拷貝到本地 git svn clone svn位址 本地資料夾名稱 git svn clone svn localprojectname2.去到本地路徑 cd localprojectname3.建立遠端倉庫 git remote add 倉庫名稱 遠端倉庫位址 首先要在遠端倉庫...
svn遷移到git倉庫的方案
svn遷移到git倉庫並保留commit歷史記錄 最近公司要求將 庫從svn遷移到gitlab,由於之前一直是由svn做版本控制。最簡單的方式是將svn的內容export出來,然後新增到gitlab即可。但是,如果svn用的時間很長了,而且很多commit,所以就希望儲存svn commit的資訊以...