天天看点

Pro Git学习笔记(一)——起步

Pro Git简体中文:http://github.danmarner.com/section/toc/

Pro Git英文版:http://git-scm.com/book(可能需要翻墙)

Git在保存和处理各种信息的时候,虽然操作起来的命令形式非常相近,但是它与其它版本控制系统的做法颇为不同。

Git和其他版本控制系统的主要差异在于,Git只关心文件数据的整体是否发生变化,大多数其他版本控制工具只关心文件内容的具体差异,记录哪些文件做了更新,更新了什么内容等等。

The major difference between Git and any other VCS (Subversion and friends included) is the way Git thinks about its data. Conceptually, most other systems store information as a list of file-based changes. These systems (CVS, Subversion, Perforce, Bazaar, and so on) think of the information they keep as a set of files and the changes made to each file over time.

Pro Git学习笔记(一)——起步

在 Git 中的绝大多数操作都只需要访问本地文件和资源,不用连网。

对于任何一个文件,在Git内都只有三种状态:已提交(committed)、已修改(modified)、已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

初次运行git前需要配置,一些配置文件位置及其作用:

  1. /etc/gitconfig

    文件:系统中对所有用户都普遍适用的配置。若使用 

    git config

     时用 

    --system

     选项,读写的就是这个文件。(Windows下如:C:\Program Files\Git\etc\gitconfig)
  2. ~/.gitconfig

    文件:用户目录下的配置文件只适用于该用户。若使用 

    git config

     时用 

    --global

     选项,读写的就是这个文件。(Windows下如:C:\Users\liushuai\.gitconfig)
  3. 当前项目的 git 目录中的配置文件(也就是工作目录中的.git/config文件):这里的配置仅仅针对当前项目有效。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

每一个级别的配置都会覆盖上层的相同配置,所以 工作目录中的.git/config文件 里的配置会覆盖

/etc/gitconfig 中的同名变量。

在Windows系统上,Git 会找寻用户主目录下的.gitconfig文件。主目录即 

$HOME

 变量指定的目录,一般都是 

C:\Documents and Settings\$USER

。此外,Git 还会尝试找寻 /etc/gitconfig 文件,只不过看当初 Git 装在什么目录,就以此作为根目录来定位。

用户信息等的配置:http://github.danmarner.com/section/ch1-5/

想了解git的各式工具该怎么用,可以阅读它们的使用帮助:http://github.danmarner.com/section/ch1-6/