- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CVS, suversion, hg, git 版本控制系统的选择之路
CVS, subversion, hg, git 版本控制系统的选择之路
subversion, hg, git
对于软件开发者或者往大了说,有知识管理或者数据管理需要的数码人?[if gte vml 1] ![endif]?,是否使用版本控制系统,肯定已经不再是一个问题。
但是选用什么版本控制系统呢?这真是一个问题。我会告诉我的大部分客户,您可以仍旧选择Subversion作为主要的版本控制工具(CVS早已被我们淘汰了,见附:SVN和CVS的比较),但是分布式版本控制系统,在特定场合诸如:异地协同开发、移动办公/开发、涉密项目的封闭式开发都有着各种不同的应用。
如果采用类似我们公司的开源开发模式或者是内部开源模式,那么 Git 可能是您的首选。
这篇博文以我们群英汇自己公司的版本库变迁历史,和网友共享…
Subversion
Subversion 是群英汇支持的最重要的产品,我们服务的大多数客户,都或多或少的选择了我们的版本控制服务。群英汇为客户提供Subversion版本控制服务,从培训、应用部署、系统整合到售后服务、技术支持。
我们公司的部分项目使用了Subversion版本控制系统,如:
(???????????? pySvnManager:托管在SourceForge上
(???????????? FreeMind-MMX:?托管在SourceForge上
(???????????? WordPress的CoSign-SSO插件:位于官方的Subversion库中
我们公司内部的开发在2007年以前,也主要使用Subversion,但是之后,我们的代码库逐渐的向分布式版本控制系统迁移:
(???????????? 先是Hg:Hg是水银的化学元素符号,全称为Mercurial。
(???????????? 后来是Git:Git 是 LinusTorvalds 继Linux后的又一个伟大发明,为全人类的另一个伟大贡献
Hg/Mercurial
Hg走入我们的视线,是因为我们研究的项目都一个一个脱离Subversion阵营,转向Hg,使用Hg作为各自项目的版本控制工具。其中一个我们主要研究的项目是:MoinMoin维基。
使用Hg后,困扰我的问题迎刃而解,就是:
(???????????? 我们的软件开发模式是基于成熟的开源软件进行定制。项目的原始代码库称为上游,我们自己的代码库称为下游;
(???????????? 使用Subersion,我们采用Subversion的Vendor分支(或称卖主分支)来管理我们的代码
(???????????? 一但上游软件软件出现新的版本,我们代码的迁移就成了最让人头痛的事情,可能好几天都不能搞定;
Hg可以很好的解决这个问题,原因在于:
(???????????? Hg是分布式版本控制工具,整个代码库都在本地,浏览变更历史速度超快,实际上是本地访问,不再受制于网络。这样我们就可以更快的建立和上游版本库的同步,尽早尽快的解决代码合并问题,而不是要等到新版本发布;
(???????????? Hg的最佳拍当MQ!简直就是为我们的开发模式所设计的。Subversoion的卖主分支和MQ相比就好像马车和火箭的对比。
(???????????? Hg简单,并且使用习惯和Subversion非常相似,这也是为什么我们公司的版本控制系统在转向 Git 后,仍有部分项目在使用 Hg的原因
群英汇的Hg开源代码库:
(???????????? /ossxp_com/
Git
有了Hg,为什么还要用git?
(???????????? 和Subversion代码库同步的需要。
o??????????????? 虽然svn可以镜像远程代码库,但镜像库不能提交
o??????????????? Hg不支持分支,因此无法完全克隆一个Subversion代码库
o??????????????? Git有着完备的分支支持,可以将远程svn库镜像为一个本地的git库,而且可以提交甚至远程提交
(???????????? Git速度更快。如果你用过git和hg,你就会对我说的有所感觉:
o??????????????? Hg提交/克隆/push/pull,我经常对自己无所事事?[if gte vml 1] ![endif]?而感到恼怒,感觉就像傻子一样,完成了多少?1%还是99%?
o??????????????? Git速度超快不说,整个过程有着详尽的提示,真是体贴备至。?[if gte vml 1] ![endif]
(???????????? Git+Topgit很好的支持上下游的协同开发
o??????????????? Hg的MQ虽然很好,但是Git有Topgit,而且Git的rebase功能更成熟
o??
您可能关注的文档
- c1驾驶员科目、科目二、科目三 详解(带图片).doc
- C2科目三考试巧(谌家矶).doc
- C51大作业 数据采集系统 ).doc
- CATIA VR20安装说明及破解.doc
- CATIA V高级曲面造型设计技巧培训教案10.docx
- CATIA 工图国标标注样式完全解决教程.doc
- CCNA第一学第三章章节测试.doc
- CCNA第二学思科官方第二单元章节测试.doc
- CCNA第二学思科官方第六单元章节测试.doc
- CCNA第四学第七章节练习.doc
- 注册验船师高频真题题库2025.docx
- 注册验船师高频题库带解析2025.docx
- 注册验船师考试必备资料2025.docx
- 注册验船师精选题库带分析2025.docx
- 注册验船师考前冲刺必刷题附答案2025.docx
- 新高考生物二轮复习讲练测第10讲 人体的稳态与免疫调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第13讲 生物技术与工程(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第9讲 神经调节与体液调节(讲练)(原卷版).docx
- 新高考生物二轮复习讲练测第7讲 遗传的基本规律与伴性遗传(检测)(原卷版) .docx
- 新高考生物二轮复习讲练测第13讲 生物技术与工程(检测)(原卷版).docx
文档评论(0)