三分鐘用 Git 學會使用 SVN
五月 30, 2022
Last updated: 2022-06-09 13:58:50
前言
學過 Git 轉換到 SVN 只需要三分鐘既可完成基本操作,資料一樣會複製一份在本機,最大差異有 2 點
- svn add 只需要一次,之後只會 svn commit 和 svn delete ,少了 git add 暫存的機制
svn commit
等同git commit
+git push
,沒 svn commit 前都不會被上傳與記錄
Git 與 SVN 指令的關係
動作 | Git | SVN |
---|---|---|
複製 Repository | git clone | svn checkout |
提交 | git commit | svn commit (svn ci) |
查看提交記錄 | git show | svn cat |
確認狀態 | git status | svn status (svn st) |
確認差異 | git diff | svn diff |
確認記錄 | git log | svn log |
增加 | git add | svn add |
移動 | git mv | svn mv |
刪除 | git rm | svn rm / svn del / svn delete |
取消修改 | git checkout / git reset | svn revert |
建立分支 | git branch | svn copy |
切換分支 | git checkout | svn switch |
合併 | git merge | svn merge |
建立標籤 | git tag | svn copy |
更新 | git pull / git fetch | svn update |
上傳到遠端 | git push | svn commit |
忽視檔案清單 | .gitignore | .svnignore |
進階
SVN 的 Git submodule / subtree
- 顯示所有 svn:externals
$ svn propget -R svn:externals
- 變更 svn:externals
$ svn pe svn:externals . --editor-cmd <editor (e.g. vim)>
$ svn commit -m '<message>' <svn:externals 資料夾位置>
$ svn update
,更新 svn:externals 資料
指定 Checkout 的版本
$ svn checkout <repository>/@<commit number>
參考資料
- 文章標題: 三分鐘用 Git 學會使用 SVN
- 文章連結: https://blog.ivanwei.co/zh-tw/2022-05-30-9-i_kwdoc3r1-85krd1o/
- 版權聲明: CC BY-NC-ND 4.0