天天看点

Git的威力!Funtoo的威力!

Git的威力!Funtoo的威力!

  • Post by TualatriX at 2008 . Category: Operation System.  9500 Views. 11 Comments

昨天看了篇文章:《Why Git is Better than X》(中文版),觉得Git很牛,但具体牛在哪里,也只是道听途说。因为没有切实地体会。

后来,不知啥事,去看Daniel Robbins(Gentoo创始人)的Funtoo去了。前些日子发现Funtoo这个玩意,但是不理解为什么会有这个东西。

但是,事情就是这么有趣。因为刚刚看完Git,而Funtoo又是托管在GitHub上的,Funtoo为什么要用Git,而不是其他?

-----

后来把blog.funtoo.org上的相关文章都看了一遍,了解到Funtoo对Gentoo的有未来导向作用。也就是说,Funtoo与Gentoo尽量保持兼容,但Futnoo的Portage又比Gentoo的新。

虽然了解到这些,但是还有疑惑。

后来断网了,还不想睡觉,就去看Git Book了,想更深层了解Git是怎么个回事。

在Git Book中,一边看一边练习基本命令和例子,我惊呆了!

Git太强大了,说它是“分布式”,还小看它了,它是全能的,基本能取代所有的X(指SCM)。

用Git建立分支,几乎是没有什么痛苦和代价的,而且开发者推荐使用分支,每个点子都用一个分支。

而且Git网络依赖性超少,基本上平时的开发都不需要用到网络,只在获取和合并时才必须用到。

当然,看我说的话不如去看《Why Git is Better than X》,看完以后,别忘了根据Git Book里去练习一下,才会彻底明白Git为什么更好!

了解了Git后,我试着猜想Funtoo的意义。

Gentoo的Portge是由上万个ebuild组成的,这些ebuild在服务器上,是通过cvs管理的吧,然后用户是用rsync来更新的。

随着Gentoo的开发者越来越多,每个开发者都有自己独有的ebuild,当周边开发者向主开发者提交的ebuild越来越多时,主开发者一定忙不过来吧。如何有效的组织这一切呢?

想想Git是谁做的?Linus Torvalds!

Linus为什么要做这个工具?我了解到Git也是慢慢发展起来到这个样子的。很明显Git最重要的作用就是为了解决维护人员在合并补丁时的痛苦。依赖Git这个强大的工作,Linux才能如此有效地进行开发。

回到Gentoo,Portage的开发有点类似于Linux,它也是由成千上万个独立文件组成的,充分具备分布式开发的条件。

这个,是不是能解释Funtoo用Git的原因呢?

当未来,Gentoo平稳地过渡到Funtoo时,Gentoo将获得新生,开发者社区将像Linux社区一样活跃起来,并且解决现在Gentoo开发当中一些不足的问题。我想是这样!

以上只是小弟根据Git和Linux开发所散发的一些想法,如有不合理之处,还请大家指出。

现在,我迫不及待地要把我所有的源码投到Git的怀抱里去了!

PS:Funtoo里有sys-apps/openrc-0.4.0,^-^

Tag: funtoo, Gentoo, Git.

» You can leave a comment.

11 Comments

  1. Jesse

    2008 December 10, 15:27

    funtoo是啥?gentoo的改进?还是,麻烦博主解释一下。

    Reply

  2. 令狐虫

    2008 December 10, 15:36

    看了那个Why Git is Better than X,我倒更觉得我选择 Mercurial 是正确的了

    1. 它不比Git慢很多

    2. 它跨平台……

    • jetta

      2008 December 10, 17:54

      Mercurial 功能太弱了

      @令狐虫,

      • 2008 December 10, 22:40

        @jetta, 愿闻其详? 我其实没有用过git,看WGBX一文里,对hg的优势只有三项,而GitHub我是不在乎的,那么就剩两项优势了。hg到底弱在什么地方呢?

        我选择hg的理由相当的简单,它可以在很多平台,包括Windows下方便的使用。而git,似乎在Windows下用起来非常不方便。

        • talebook

          2009 August 11, 20:22

          以我对HG的体验,HG已经拥有了多数的SCM的功能,甚至性能也是不错的。但我最难以接受的是其对“版本”的管理功能。比如我正在开发某软件XSOF,目前的主流版本是1.5.x,然后我就开始打算全新设计新的版本2.0.x,这时候hg该如何做呢??做不了。因为HG的基本没有分支能力,所以我只能拷贝一份代码,到新的文件夹,开始我的新的2.0.x的开发。有此也可看到,当我想发布/备份某个版本1.5.1,但是新的版本1.5.2确是1.5.0直接分支过来的,那么,又得折腾一番。。。

          而GIT的强大分支功能,能够轻松解决上述问题,而这功能,也是我的最爱。

          当然,我觉得GIT不容易(但还是可以的)提供CVS之类的中心版本服务器功能,使得小团队的开发不够方便,这也是缺点

          • yinwm

            2010 June 29, 13:49

            hg 也有分支功能啊。而且和Git差不多阿。

  3. GunsNRose

    2008 December 10, 16:21

    http://linuxtoy.org/archives/git-community-book.html   免费电子书:Git Community Book

    在win下用git实在麻烦

  4. 2008 December 10, 16:46

    慢慢看着怎么觉得funtoo现在像一个git 的overlay :D

    看了funtoo网上的方法,可以一试用用funtoo 的git portage

    http://github.com/funtoo/portage/wikis/first-steps

  5. r0bertz

    2008 December 10, 19:09

    http://www.gentoo-cn.org/gitweb/

  6. weakish

    2008 December 24, 00:31

    ebuild似乎是通過svn來同步的。

    why git is better than X裏面提到git比hg優的有三個地方:

    github: hg也有BitBucket,而且目前github可能因為訪問量大的關系,網站時不時會出問題。

    staging area: 很酷的特性。不過對於習慣cvs的人來說,hg的方式比git的更容易理解。如果需要分別提交,也可以用hg自帶的record extension。

    cheap local branch: hg也有lbranch插件,不過和git的差距很大。

    git的repack機制很奇怪,這點不如hg。

  7. windwiny

    2009 January 07, 10:31

继续阅读