git-svn 使用

The Redefine Team Lv5

如果正在使用svn,打算换到git,又暂时不想放弃已有的svn代码库,可以选择git-svn。

初始化代码库

git svn clone -s svn-repository-url
git svn clone svn-repository-url local-projectname

svn-repository-url 是svn代码库的url,如果要从trunk目录或者某个branch目录里check out ,要把
-s 换成-T,-b等选项,请自行man git-svn。

由于需要同步所有的提交历史,所有比较慢,同步完成后就可以工作了。

不过在开始之前可以先运行:
git gc
对代码库的信息进行垃圾收集和压缩,最明显的作用就是减小磁盘空间。

应该得到了一个主分支。
*master
可以按照git的使用方式进行代码的编写了。

为了确保代码没有过时,不时运行一下
git svn rebase
运行命令时确保工作目录整洁。如果本地做了修改,则必须在运行
git svn rebase
之前或暂存工作,或暂时提交内容–不然会发生衍合的结果包含冲突而终止。

为了确保svn的代码是一个线性的历史记录,使用rebase进行衍合,不要使用merge。

最后用
git svn rebase
获取最新代码,在基础上进行衍合,然后
git svn dcommit
对代码进行提交。

  • 标题: git-svn 使用
  • 作者: The Redefine Team
  • 创建于 : 2012-02-15 05:39:12
  • 更新于 : 2023-05-23 18:52:03
  • 链接: https://redefine.ohevan.com/2012/02/15/git-svn/
  • 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论
目录
git-svn 使用