SVN版本库迁移到Git工具SubGit
<p>SVN版本库迁移到Git工具SubGit<br>subversion和git是最出名的两款版本库管理软件。两者的比较参见: GIT与SVN之间的五大基本区别 http://www.ttlsa.com/html/1869.html<br>
使用SubGit工具可以将SVN迁移到Git上面。大大方便subversion和git用户,不管你喜欢哪款版本库管理软件,都可以创建可写的本地Git镜像或远程的subversion版本库。<br>
SubGit 2.0版本,开始支持远程subversion版本库,因此创建Git镜像,无需shell访问subversion版本库了。<br>
项目地址:<br>
http://subgit.com/index.html<br>
架构图如下:</p>
<p><img src="https://zhuji.jb51.net/uploads/img/20230517/35f51cfb29190c2a2859f89915e124bb.jpg" width="150" height="150"></p>
<p>SubGit构建一个双向的subversion和Git复制。<br>
SubGit是一个将版本控制系统从SVN迁移到Git的工具,具有:<br>
1. 比Git自带工具git-svn更好<br>
2. 无需更改现有架构<br>
3. 可使用所有的git和subversion特性</p>
<p>SubGit与git-svn比较<br>
SubGit是git-svn替代工具,自然而然SubGit解决了许多git-svn限制。</p>
<p>1.理论基础<br>
Git-Svn:<br>
a. 了解如何使用git<br>
b. 了解如何使用Git-Svn 参见http://schacon.github.io/git/git-svn.html<br>
c. 使用git-svn前,注意事项 参见 http://schacon.github.io/git/git-svn.html<br>
d. 适合于有限的git-svn工作流,应避免非线形历史和合并<br>
SubGit:<br>
了解如何使用git</p>
<p>2. 安装一次<br>
Git-Svn:<br>
每个开发者需要:<br>
a. 使用git-svn克隆版本库,耗时时间依赖版本库大小<br>
b. 调整git-svn配置,确保不会与其他用户的配置发生冲突<br>
c. 遇到众多的git-svn陷阱和告警<br>
SubGit:<br>
a. 系统管理员在已有的git或subversion版本库服务器上安装SubGit,调整相关配置,重新启动服务<br>
b. 开发者使用git</p>
<p>3. 无差错转换<br>
Git-Svn:<br>
a. 用户使用git-svn ‘dcommit’将更改‘push’到subversion版本库<br>
b. git提交翻译过的subversion版本<br>
c. 另一个用户运行git-svn ‘rebase’获取这些更改<br>
d. subversion版本被翻译到git提交<br>
SubGit:<br>
a. 用户推git提交到git仓库<br>
b. git提交将异步转换到subversion版本<br>
c. 另一个用户从git仓库拉取这些提交<br>
d. subversion用户接受转换过的版本更新<br>
尽可能的将SubGit工作在异步方式下。</p>
<p>4. 工具自由<br>
Git-Svn:<br>
唯一的,只有命令行的,只有线性的历史。<br>
SubGit:<br>
使用Git和任何工具只要你喜欢,如IDE集成或独立的Git的UI客户端。</p>
<p>SubGit使用手册:<br>
SubGit手册有两类:一种是解释如何安装SubGit到subversion版本库,另一种是解释如何镜像远程的subversion版本库。选择哪种取决于你的需求。</p>
<p>创建一个Git仓库,通过网络访问远程subversion版本库,做个镜像库。从Git转换到subversion开始推操作,从subversion转换到Git在后台异步执行。</p>
<p>1. 获取一个远程subversion库镜像<br>
参见手册: http://subgit.com/book-remote/index.html 中文手册:http://www.ttlsa.com/html/1906.html<br>
subversion版本库服务器上安装SubGit。subversion和git库在同一服务器上。转换在两个方向上立即进行,同时介绍了最小的开销。</p>
<p>2. SVN安全的迁移到Git <br>
参见手册: http://subgit.com/book/index.html<br>
一次性将现有的subversion库导入到Git,不需要同步。</p>
<p>具体使用请专注下节内容。</p>
<p>如需转载请注明出处: SVN版本库迁移到Git工具SubGit http://www.ttlsa.com/html/1864.html</p>
頁:
[1]