Git

维基百科,自由的百科全书

跳转到: 导航, 搜索

Git

Git logo
設計 Linus Torvalds
開發 Junio Hamano, Linus Torvalds
最新版本 1.6.3.2[1] / 2009-06-04; 36 天前
編程語言 CBourne ShellPerl[2]
作業系統 POSIX
類型 版本控制
許可協議 GNU通用公共许可证 版本二
網站 http://git-scm.com/

Git 是一个由林纳斯·托瓦兹为了更好地管理linux内核开发而创立的分布式版本控制软件配置管理软件。需要注意的是和GNU Interactive Tools,一个类似Norton Commander界面的文件管理器相区分。

Git最初的开发动力来自于BitKeeperMonotone[3][4]。 Git最初只是作为一个可以被其他前端比如CogitoStGIT[5]包装的后端而开发的。不过,后来Git内核已经成熟到可以独立地用作版本控制[6]。很多有名的软件都使用Git来进行版本控制[7],其中有Linux内核X.Org服务器OLPC (OLPC) 内核开发。[8]

目录

[编辑] 命名来源

林纳斯·托瓦兹 自嘲地取了这个名字"git"。在英式英语中指一个愚笨或者不开心的人。[9]

I'm an egotistical bastard, and I name all my projects after myself. First Linux, now git.

Git的官方维基也给出了多种其他的关于名字的解释。[10]

[编辑] 主要功能

Git --- The stupid content tracker, 傻瓜内容跟踪器。Linus 是这样给我们介绍 Git 的。

Git 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。

实际上内核开发团队决定开始开发和使用 Git 来作为内核开发的版本控制系统的时候,世界开源社群的反对声音不少,最大的理由是 Git 太艰涩难懂,从 Git 的内部工作机制来说,的确是这样。但是随着开发的深入,Git 的正常使用都由一些友好的脚本命令来执行,使 Git 变得非常好用,即使是用来管理我们自己的开发项目,Git 都是一个友好,有力的工具。现在,越来越多的著名项目采用 Git 来管理项目开发,例如:wine, U-boot 等,详情看 http://www.kernel.org/git

作为开源自由原教旨主义项目,Git 没有对版本库的浏览和修改做任何的权限限制,通过其他工具也可以达到有限的权限控制,比如:gitosis。原本 Git的使用范围只适用于 Linux / Unix 平台,但逐步并成熟了在 Windows 平台下的使用,主要归功于Cygwinmsysgit环境与TortoiseGit这样易用的 GUI 工具。其实 Git 的源代码中已经加入了对 Cygwin 与 MingGW 编译环境的支持并被逐步完善,对于 Windows 使用者是个福音。

[编辑] 早期历史

[编辑] 实现原理

[编辑] 移植性

[编辑] 相关条目

一些著名的采用Git的开源项目:

[编辑] 参考文献

  1. ^ Junio C Hamano(2009年6月4日)[ANNOUNCE] GIT 1.6.3.2.git mailing list.
  2. ^ http://git.kernel.org/?p=git/git.git;a=tree
  3. ^ Linus Torvalds(2006年5月5日)Re: [ANNOUNCE] Git wiki.linux-kernel mailing list. "Some historical background" on git's predecessors
  4. ^ Linus Torvalds(2005年4月7日)Re: Kernel SCM saga.linux-kernel mailing list.
  5. ^ Linus Torvalds(2005年4月8日)Re: Kernel SCM saga.linux-kernel mailing list.於2008年2月20日查閱.
  6. ^ Linus Torvalds(2006年3月23日)Re: Errors GITtifying GCC and Binutils.git mailing list.
  7. ^ Projects that use Git for their source code management.於2008年2月20日查閱.
  8. ^ OLPC wiki.Project hosting.於2008年2月20日查閱.
  9. ^ After controversy, Torvalds begins work on git(2005年4月19日).InfoWorld.ISSN 0199-66490199-6649.於2008年2月20日查閱. 
  10. ^ GitFaq: Why the 'git' name?

[编辑] 外部链接

个人工具