火星日记 ~ 第七百四十九天 ~ 爱死Mercurial了

Lee.MaRS 发表于 2007-12-11 00:20:36

话说自己其实对版本控制系统并不是很有心得。

本来对SVN就不能说是很熟练,只能说是能用起来了。

对SVN的感觉一般,基本上现在的开发模式都不会遇到Merge的情况。大家就把SVN当成一种纯粹的共享工具来用了。

后来到正义阵营里面小用了一下Perforce,用得非常不顺手。不过我发表这个看法的时候被毛虫bs了,1说Perforce非常好用。

看来这个东西也是仁者见仁。

不过自从用过Mercurial后,我觉得这个才是适合计算机系学生使用的东西。

Mercurial,也就是传说中的Hg,一个分布式版本控制系统。

对之对应的就是传统的CVS / SVN的集中式版本控制系统。

简单地说,集中式的就是有一个中央仓库,大家都围绕这个中央仓库干活。

工作模式基本上是checkout - modify - merge - commit。

而分布式呢,没有唯一 的中央仓库的概念,只要是同一个Project,每个人的工作目录都是一个仓库。

你可以从别人那里pull修改,也可以把自己的修改push到别人那里。

工作模式大体上是clone/pull - update - modify - merge - commit - push。

为什么说这个适合计算机系学生呢?

因为你不需要建立任何的服务器,就可以管理你的代码,并且可以用相当简单地方式与别人分享。

以我做OS Lab6来举例,看看log:

[leemars@LeeMaRS-Notebook Lab6]$ hg log
changeset:   7:931866d8bd09
tag:         tip
user:        Lee.MaRS <leemars@gmail.com>
date:        Mon Dec 10 23:03:43 2007 +0800
summary:     改名

changeset:   6:297a4bd66ad9
user:        Lee.MaRS <leemars@gmail.com>
date:        Mon Dec 10 23:00:24 2007 +0800
summary:     完成实验报告

changeset:   5:73255cb40998
user:        Lee.MaRS <leemars@gmail.com>
date:        Mon Dec 10 22:59:26 2007 +0800
summary:     完成不受编译器优化影响的busyloop_v3.c

changeset:   4:41b487e6db44
user:        Lee.MaRS <leemars@gmail.com>
date:        Mon Dec 10 15:03:03 2007 +0800
summary:     把原版程序重整格式,方便diff

changeset:   3:cc39fb632887
user:        Lee.MaRS <leemars@gmail.com>
date:        Mon Dec 10 14:58:18 2007 +0800
summary:     完成实验步骤二

changeset:   2:d09f95db8ce4
user:        leemars@gmail.com
date:        Mon Dec 10 12:41:04 2007 +0800
summary:     完成实验步骤一

changeset:   1:755d5231b045
user:        leemars@gmail.com
date:        Mon Dec 10 12:24:00 2007 +0800
summary:     完成checkrate.c

changeset:   0:8dae61731b59
user:        leemars@gmail.com
date:        Mon Dec 10 12:13:23 2007 +0800
summary:     最初版本

只要你不需要明确的中央仓库,基本上不需要建立服务器……单就这一点我就非常喜欢。

总之我是爱死这东东了……
关键词(Tag): mercurial 版本控制系统 vcs

曾经的这一天...


收藏: QQ书签 del.icio.us 订阅: Google 抓虾

最新评论


  • zellux
    2007-12-11 22:45:43 匿名 202.120.*.* http://www.blogjava.net/zellux

    好像的确很好用啊,这几天把svn配起来不怎么会用 =,=
    试试这个

发表评论

* 昵称

已经注册过? 请登录

新用户请先注册 以便能显示头像及追踪评论回复

Email
网址
* 评论
表情
 
 

分类小组论坛
杂谈, 娱乐、八卦, 文学、艺术, 体育, 旅游、同城, 象牙塔, 情感, 时尚、生活, 星座, 科技

请注意遵守中华人民共和国法律法规, 如威胁到本站生存, 将依法向有关部门报告, 同时本站的相关记录可能成为对您不利的证据.

相关法律法规
全国人大常委会关于维护互联网安全的决定
中华人民共和国计算机信息系统安全保护条例
中华人民共和国计算机信息网络国际联网管理暂行规定
计算机信息网络国际联网安全保护管理办法
计算机信息系统国际联网保密管理规定