基于历史问题,大量项目使用 SVN
进行版本管理,而 Git
作为 SVN
的替代品,可以方便地管理 SVN
项目。
管理的基础,是 Git
与 SVN
之间的转换,即 Git-SVN
命令。
Git-SVN 命令
- 初始化
Git
仓库
$ git svn init https://svn.example.com/svn/repo -T trunk -b branches -t tags --username zhangsan
|
- 更新
Git
仓库
- 建立自己的
Git
分支
- 在自己的
Git
分支上开发
$ git checkout my_branch $ git add file1 file2 $ git commit -m "commit message"
|
- 同步
Git
分支到 SVN
仓库
$ git svn fetch $ git svn dcommit
|
特别操作
如果想在自己分支和 SVN
仓库之间保持差异,可在建立分支后,在自己分支上进行虚拟合并,造出合并点。
# hash id 为 git-svn fetch 后,git log 中显示的最新 commit id $ git merge -s ours hashid
|
参考资料
[1] Git-SVN