Rails存储库从SVN转向Git

简介: 在Ruby on Rails 2.1版本发布的前夕,Rails开发团队也准备将代码的存储库从Subversion迁移到Git之上。在Ruby on Rails的官方博客里,DHH写到: 我们准备将Rails开发的代码存储库从Subversion迁移到Git之上,迁移过程将会在近期内完成。

在Ruby on Rails 2.1版本发布的前夕,Rails开发团队也准备将代码的存储库从Subversion迁移到Git之上。在Ruby on Rails的官方博客里,DHH写到

我们准备将Rails开发的代码存储库从Subversion迁移到Git之上,迁移过程将会在近期内完成。并且会使用Github来帮助开发者进行协作。在版本存储库迁移的同时,我们也会将问题跟踪系统转移到基于Rails开发的Lighthouse应用之上,于是到目前为止,我们的存储库和问题跟踪系统都是使用的Rails应用,这对我们是一个很好的鼓励。

在代码存储库迁移之后,我们将冻结现有Subversion的存储库以及Trac问题跟踪系统。这两个系统都会保留较长一段时 间,但是我们并不建议使用者再去访问它们。这意味着我们的Subversion存储库依然可以访问,但是如果你想获得最新的代码,需要在新的Git存储库 上更新。

为了帮助使用者更快的适应存储库系统的迁移,DHH同时也推荐了SVN使用者的Git快速上手教程。在对DHH声明的评论中,大部分开发者对此表示了赞赏与支持。其中,Scott Chacon为其他开发者推荐了为计算机科学家准备的Git介绍一文,文中讲解了当Git命令执行时,Git是究竟如何帮助我们处理工作的。Scott认为,了解Git是如何工作的,对于正确的使用Git有着积极的意义。

Git是Linus Torvalds为Linux内核开发而专门打造的版本控制软件,更加关注在管理大型项目时,代码版本的更新速度、效率以及可用性方面的提升,并为非线性 的协作开发提供良好的支持。Git帮助开发者保留历史版本在本地的全部记录,同时大型项目管理方面,效率比一般的版本控制工具都要高。在Linux内核开 发的版本控制中,Git发挥了积极的作用,Linus对其的评价是“傻瓜式的内容跟踪工具”。

Git基于GNU General Public License v2协议开放源代码。目前已从Linus Torvalds移交给Junio C Hamano维护。Git目前最新的版本是1.5.4.5,这个版本在之前的版本基础上修改了十多处Bug,并且对于部分文档进行了更新。

目前,Git也获得越来越多国内开发者的认可,并在项目开发中尝试使用Git来进行源代码的版本控制管理工作。对于使用Git所带来的好处,国内的开发者Robin Lu在Blog中这样评价道

初始化非常方便...对于随便写两行代码就要放到SCM里的人来说,再合适不过。将Git用作备份系统,或 者同步两台机器文档来使用,都很方便。Git的绝大部分操作都在本地完成,不用和集中的SCM服务器交互,使用者可以放心的随时随地提交代码。在Git 中,分支管理更为容易,无论是建立新的分支,还是在分支之间切换,仅有一条命令就可以完成,不需要建立多余的目录。除此之外,分支之间合并时,不仅代码会 合并在一起,Check In的历史也会保留下来。

目前,包括Rails在内,已经有不少知名项目已经迁移到Git之上来进行源代码版本管理,比如RubiniusMerb、Wine、 U-boot、Beryl等项目。尽管Git的命令繁多,但不少开发者为Git编写了小的脚本与批处理程序,进一步让Git命令的使用变得更加方便快捷, 并且对开发者更为友好。同时,基于Rails开发的Git存储库托管工具GitHub,也为开发者带来了更为方便的协作模式,关于GitHub的细节报 道,请阅读InfoQ中文站GitHub:基于Rails的Git库托管一文。

作者 高昂

相关文章
|
6月前
|
存储 网络协议 Ubuntu
如何在Ubuntu安装配置SVN服务端并实现无公网ip访问内网资料库
如何在Ubuntu安装配置SVN服务端并实现无公网ip访问内网资料库
202 0
|
6月前
|
存储 算法 开发工具
git是什么?git的五个命令,git和svn的区别
git是什么?git的五个命令,git和svn的区别
93 0
|
3月前
|
敏捷开发 存储 开发工具
版本控制系统的选择:Git与SVN的比较
【8月更文挑战第14天】Git和SVN都是优秀的版本控制系统,它们各自具有独特的优势和适用场景。在选择版本控制系统时,需要根据具体的项目需求、团队特点和开发模式来综合考量。对于需要分布式团队协作、高效处理大型项目或采用敏捷开发模式的团队来说,Git是一个更好的选择。而对于传统团队、集中式开发或简单项目来说,SVN可能更加合适。无论选择哪种版本控制系统,都应该充分利用其提供的工具和功能来提高代码质量和开发效率。
|
21天前
|
算法 网络安全 开发工具
[Git]关联远程库的两种方法及配置
本文介绍了 git 的四种连接方式:ssh 连接、HTTPS 连接、SVN 连接和 SVN + ssh 连接,重点讲解了 HTTPS 和 ssh 连接方式的配置及注意事项。文章详细解释了 HTTPS 连接的身份验证过程、常见问题及解决方案,以及 ssh 连接的公钥和私钥的创建、配置方法。此外,还介绍了如何在同一台电脑上连接多个 gitee 账号的方法。
57 0
[Git]关联远程库的两种方法及配置
|
1月前
|
存储 开发工具 git
Git和SVN有什么区别?
综上所述,选择Git还是SVN取决于项目的具体需求、团队规模以及工作习惯。Git因其高级特性和灵活性,成为了现代软件开发中更受欢迎的选择,而SVN在某些特定场景下仍保有一席之地。开发者应当根据实际情况,权衡两者之间的优劣,作出最适合项目的选择。
70 4
|
3月前
|
存储 开发工具 数据安全/隐私保护
Git 与 SVN:版本控制领域的双星对比
【8月更文挑战第27天】
161 6
|
3月前
|
存储 开发工具 数据库
什么是 Git 存储库?
【8月更文挑战第14天】
164 3
|
3月前
|
Kubernetes jenkins 持续交付
Jenkins + SVN/Git + Maven + Docker + 阿里云镜像 + Kubernetes(K8S)
Jenkins + SVN/Git + Maven + Docker + 阿里云镜像 + Kubernetes(K8S)
162 0
|
6月前
|
存储 项目管理 开发工具
如何使用 Git Clean 清理 Git 存储库?
【4月更文挑战第9天】
1047 9
如何使用 Git Clean 清理 Git 存储库?
|
5月前
|
中间件 Java 生物认证
Web应用&源码泄漏&开源闭源&指纹识别&GIT&SVN&DS&备份
Web应用&源码泄漏&开源闭源&指纹识别&GIT&SVN&DS&备份