目前在公司参与的项目都是用 SVN 做版本控制的,然而我非常不喜欢 SVN:
-
配置忽略文件规则没 Git 的
.gitignore
那么方便灵活 -
查看提交记录慢的要死
-
每次提交都得提交到远程仓库,不太方便
-
网络不佳或 SVN 服务器故障的时候,无法提交
-
有时同时做了几件事,想做完一起提交,但又不希望放到同一个提交记录里
-
有时本地做好了某个东西,想先保存下来,但还不宜提交到远程仓库
-
让所有人把版本管理工具切换到 Git 是不现实的,只能自己想办法了,找找有没有桥接工具,自动把本地的 Git 提交记录转换成 SVN 提交记录并提交到仓库。
还真有这类工具。
Git 本身就自带了一个 git-svn,但是很多操作要使用 git svn
子命令,不好用。
最终发现了 SugGit,非常好用,配置好之后就完全可以忘掉远程仓库是 SVN 了。
已经使用几个月了,没遇到什么问题。
SubGit 的几个特点:
-
商业软件,不过有免费版本,限制最多 10 个 Git 用户,个人使用或小团队都足够了
-
使用 Java 编写,因此适用于各个平台
-
可以直接与 SVN 仓库集成,或与 GitLab, GitHub 等 Git 托管平台集成
-
双向同步:自动检查 SVN 仓库更新,转成 Git 提交记录;推送 Git 提交记录时自动同步提交到 SVN 仓库
使用方法比较简单,可以查看官方文档。