Gangmax Blog

Use Git

简介

Git是一个自由、开放源代码(GPLv2)、快速、分布式的版本控制系统(the fast, distributed version control system)。项目发起者是Linus Torvalds,项目开始于2005年。最初的目标是用于Linux核心开发的版本控制。

使用Git的一些项目:

  • Git
  • Linux Kernel
  • Perl
  • Eclipse
  • Gnome
  • KDE
  • Qt
  • Ruby on Rails
  • Android
  • PostgreSQL
  • Debian
  • X.org

与其它版本控制系统相比,Git有以下特点:

1. 所有內容都在本地(Everything is Local)

换句话说,一个git的本地工做目录(local work copy)中包含了该工程所有的历史信息。这些信息并不需要到中央服务器上查询。另外,请不要误解,你依然可以建立一个git central server以供所有团队成员使用。

其它的分布式SCM系统(hg, bzr)也有这样的特性,不过git做的更彻底:比如使用 Mercurial,一些常用的指令如 ‘incoming’ 和 ‘outgoing’ 也需要连接服务器,而用 Git 你可以在离线前 ‘fetch’ 服务器上所有的资料,然后比较、合并和查看纪录,这些资料可以是原本在服务器上的而还不在你的本分支中。

2. 分布式(Distributed)

Not checkout from the central server, but clone from it.

这表示甚至你是使用中央集中式的工作流程,每一位用户都有会一份主服务器的备份,每一份都可以在主服务器当机或损坏时推上去取代主服务器。 基本上使用 Git 不会因为遗失单一的点而造成灾难,除非就只有那一个点。

3. 简便的本地分支(Cheap Local Branching)

Git鼓励开发者使用分支与合并,这些操作发生在本地,速度很快,而且很简单。

4. Git很快(Git is Fast)

Git的速度快于其它分布式SCM系统,如hg, bzr。更不用说非分布式的cvs, svn了。

5. Git很小(Git is Small)

和其他分布式SCM系统(hg, bzr)相比,Git本地目录占用更少的磁盘空间。

6. GitHub

GitHub 是很多人使用 Git 的原因之一,因为它更像是一个社交网络而不仅仅是简单的 hosting 服务。 人们找到其它开发人员或是项目,和他们想要做的事类似,因此可以轻易的分支然后贡献,以 Git 和各种项目为中心创造出一个非常活跃的社群。

安装

Debian/Ubuntu/Mint: sudo apt-get install git-core
RedHat/Fedora/CentOS: sudo yum install git-core
ArchLinux: sudo pacman -S git

其它操作系统可以从这里下载安装包进行安装,支持Mac OS X, Windows, deb, rpm, Solaris等格式的安装文件。

全局设置:

1
2
3
4
5
6
7
8
9
#设置使用者名字和邮件地址
$ git config --global user.name "Firstname Lastname"
$ git config --global user.email "your_email@youremail.com"
#设置token(optional)
$ git config --global github.user username
$ git config --global github.token 0123456789yourf0123456789token
#设置自动处理换行符
$ git config --global core.autocrlf input
$ git config --global core.autocrlf true

参考:

http://book.git-scm.com/

http://zh-tw.whygitisbetterthanx.com/

http://imtx.me/archives/923.html

http://en.wikipedia.org/wiki/Git_%28software%29

http://help.github.com/linux-set-up-git/
http://help.github.com/dealing-with-lineendings/

[原创文章,转载请注明出处。]

Comments