Rails存储库从SVN转向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库托管一文。

作者 高昂

时间: 2024-09-25 02:29:03

Rails存储库从SVN转向Git的相关文章

八一八cvs vss svn和git比较

特征 CVS Git Mercurial Subversion 是否原子提交 CVS: 没有. CVS提交不是原子的 Git: 是的. 提交都是原子的 Mercurial: 是的   Subversion: 提交都是原子的 文件和目录是否可以移动或重命名 CVS: 不是. 重命名不支持. 如果手动进行, 可能会损坏历史记录 Git: 支持重命名, 这是很实用的目的. git甚至能检测到重命名之后文件的改变. 尽管如此, 基于特殊的存储结构, 重命名不会被显示的记录, git能够推导出来(在实际使

SVN和Git的一些用法总结(转)

转载请注明出处:http://www.codelast.com/ 以下都是比较基础的操作,高手们请绕道,不必浪费时间来看了. (A)SVN (1)查看日志提交的时候一般会写上注释,如果要查看提交日志,用以下命令: 1 svn log -l 4 其中,-l 4表示只查看最近4条日志(也可以没有这样的参数,就表示查看所有日志).但是你通常会很抓狂地发现,最近的几条日志中,竟然没有你才刚刚提交的那一次的日志!这是怎么回事?日志丢了吗?其实,是因为你要很用以下命令,更新本地的版本库,才能看到最近提交的日

xen server 存储库(sr)损坏的数据恢复方案

[常见故障] 一.sr无法识别,所有虚拟磁盘(vdi)丢失 二.sr中的虚拟磁盘(vdi)访问时报错 三.虚拟磁盘(vdi)删除或丢失 四.快照(snapshot)删除或丢失 五.sr初始化 六.sr所在的LVM结构损坏 七.sr所属的PV分区表损坏 八.其他故障 [故障分析] 上述常见故障是用户界面层的表现,探究其解决方案其实万变不离其宗,仅需明白xen server sr层的结构组成,上述故障即可有清晰的解决思路. xen server sr存储库的结构组成多数基于linux lvm,sr中

使用Rational Team Concert Item Connector同步数据存储库

在不同的部门连接数据存储库,以使协作更容易 不同的部门系统之间的数据同步化是非常重要的.例如,客户支持与开发部门通常拥有他们自己的问 题追踪系统,这样数据同步化就能使不同部门之间的员工可以共享信息并且同时处理相同的问题.但是, 这实现起来是十分困难的,因为它需要手动的操作.不同部门之间的员工协作性地处理相同问题的一种方 式是,联系两个团队之间的储存库,这样人们相互之间可以共享并追踪储存库中的对象.您可以使用项目 连接器(Item Connector)来完成该项操作,其中的项目连接器是 IBM R

大数据:70多个网站让你免费获取大数据存储库

你是否需要大量的数据来检验你的APP性能?最简单的方法是从网上免费数据存储库下载数据样本.但这种方法最大的缺点是数据很少有独特的内容并且不一定能达到预期的结果.以下是70多家可以获得免费大数据存储库的网站. Wikipedia:Database :向感兴趣的用户提供所有可用的内容的免费副本.可以得到多种语言的数据.内容连同图片可以下载. Common crawl 建立并维护一个所有人都可以访问的开放的网络.这个数据保存在亚马逊s3bucket中,请求者可能花费一些钱来访问它. Common cr

TomP2P 4.0.0发布 高性能键值对数据的存储库

TomP2P 4.0.0 版本能够更好地支持UPnP和新的NAT-PMP(jNAT PMPlib).支持新的持久连接,新的连接处理和保留.升级后的库包含:Netty.Guava 和 BerkleyDB.以及多个问题的修复. TomP2P是一个基于P2P的高性能键值对数据的存储库.每个值对数据有一个表(基于磁盘或内存)来存储自己的值.单一的值可以用于查询或更新次要的键.通信的基础框架使用Java NIO来处理多个并发连接. 软件信息:http://freecode.com/urls/47f4cca

70多个网站让你免费获取大数据存储库

你是否需要大量的数据来检验你的APP性能?最简单的方法是从网上免费数据存储库下载数据样本.但这种方法最大的缺点是数据很少有独特的内容并且不一定能达到预期的结果.以下是70多家可以获得免费大数据存储库的网站. Wikipedia:Database :向感兴趣的用户提供所有可用的内容的免费副本.可以得到多种语言的数据.内容连同图片可以下载. Common crawl 建立并维护一个所有人都可以访问的开放的网络.这个数据保存在亚马逊s3bucket中,请求者可能花费一些钱来访问它. Common cr

maven myeclipse-新建Maven项目报错,提示连接不上中央存储库

问题描述 新建Maven项目报错,提示连接不上中央存储库 CoreException: Could not calculate build plan: Plugin org.apache.maven.plugins:maven-compiler-plugin:2.3.2 or one of its dependencies could not be resolved: Failed to read artifact descriptor for org.apache.maven.plugins:

svn与git的区别(总结)

版本控制器的作用: 可以协同代码管理,让多人开发代码得以实现. 回归到以前的任何一个时间点的代码处(好比:开始写了很多代码,后面有修改了一些,突然IDE崩溃,但是发现还是以前的代码更好,这个时候无法回去,这个时候没有后悔药吃,但是可以使用版本备份,但是即花费空间和花费时间). 由于上面的版本备份造成版本众多,难于找到正确的版本(SVN有专门的日志记录了文件的每一次修改,可以通过查看日志回到任何一个自己想要的版本). 代码冲突的问题,主要是多人操作同一个文件(团队开发很常见). 可以查看每个人具体