git初学者指南

基本git安装

最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑。不过,慢慢地有人把它移植到了Windows上。现在,Git可以在Linux、Unix、Mac和Windows这几大平台上正常运行了。

要使用Git,第一步当然是安装Git了。根据你当前使用的平台来阅读下面的文字:

Linux上安装Git

  1. 首先,你可以试着输入git,看看系统有没有安装Git:

     $ git
     The program 'git' is currently not installed. You can install it by typing:
     sudo apt-get install git
    

    像上面的命令,有很多Linux会友好地告诉你Git没有安装,还会告诉你如何安装Git。

    如果你碰巧用Debian或Ubuntu Linux,通过一条sudo apt-get install git就可以直接完成Git的安装,非常简单。

    老一点的Debian或Ubuntu Linux,要把命令改为sudo apt-get install git-core,因为以前有个软件也叫GIT(GNU Interactive Tools),结果Git就只能叫git-core了。由于Git名气实在太大,后来就把GNU Interactive Tools改成gnuitgit-core正式改为git

  2. 如果是其他 Linux 发行版,一般包管理系统里都会带有这个包,可用不同的命令来安装。

    如 fedora,可以直接 sudo dnf install git 或者 sudo yum install git 如 archlinux,可以用 'sudo pacman -S git'来安装。

  1. 现在 Linux 发行版的包管理系统搭载的不一定是最新版的 Git。如果需要最新版的 Git,那可以自行编译。 首先要安装足够的软件包,即所谓的依赖。

     Ubuntu: sudo apt-get build-dep git
     Fedora: sudo dnf builddep git 或者是 sudo yum builddep git
    

    然后到 Git 源码包网站 上去下载最新版压缩包,下来后解压到一个文件夹里。 之后就是 ./configuremake all(如果要文档,可以 make all doc),最后要 sudo make install

Mac OS X上安装Git

如果你正在使用Mac做开发,有两种安装Git的方法。

一是安装homebrew,然后通过homebrew安装Git,具体方法请参考homebrew的文档:http://brew.sh/。

第二种方法更简单,也是推荐的方法,就是直接从AppStore安装Xcode,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”->“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。

Install安装

Xcode是Apple官方IDE,功能非常强大,是开发Mac和iOS App的必选装备,而且是免费的!

Windows上安装Git

实话实说,Windows是最烂的开发平台,如果不是开发Windows游戏或者在IE里调试页面,一般不推荐用Windows。不过,既然已经上了微软的贼船,也是有办法安装Git的。

Windows下要使用很多Linux/Unix的工具时,需要Cygwin这样的模拟环境,Git也一样。Cygwin的安装和配置都比较复杂,就不建议你折腾了。不过,有高人已经把模拟环境和Git都打包好了,名叫msysgit,只需要下载一个单独的exe安装程序,其他什么也不用装,绝对好用。

msysgit是Windows版的Git,从http://msysgit.github.io/下载,然后按默认选项安装即可。

安装完成后,在开始菜单里找到“Git”->“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功!

WINDOWS安装

几个常用的平台环境下安装git的方法都简单列出来了。

以上基本引用 瘳雪峰的官方网站--安装Git

另注:

Git 2.0的 Windows 移植版本也在积极的开发中,只不过现在还不稳定,不能拿出来大规模使用。有兴趣的人可以去关注一下 git for windows

Git 基本设置

安装完成后,还需要最后一步基本的设置,在命令行输入:

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

因为Git是分布式版本控制系统,所以,每个机器都必须自报家门:你的名字和Email地址。你也许会担心,如果有人故意冒充别人怎么办?这个不必担心,首先我们相信大家都是善良无知的群众,其次,真的有冒充的也是有办法可查的。

其中有一个办法是使用 gnupg 制作一个专用于 Git 提交的密钥,具体怎么做,这里不作介绍。 有兴趣的可以查看Pro Git。 密钥制作好后,设置时就直接 $ git config --global user.signingkey XXXXXXXX,就设置了唯一的用户对应的密钥。 但git 1.x的版本并没有自动在提交时添加密钥的选项,提交时需要手动添加 -S 参数。 而在git 2.x加入一个选项, $ git config --global commit.gpgsign true,满足自动加密钥签名。

Git 的设置是比较复杂的,1.x 的版本跟 2.x 的版本有些差异。但总的来说,要设置的一般也就那么几个,用户名、邮件地址、跨平台换行符的问题、合并策略和一些别名(即简单的命令组合,比如把 checkout 缩写成 co)等。

  1. git config 有多级分层的设置,层次从高到低是 系统 -- 用户 -- 仓库 -- 文件

    • --system 参数,是系统级别的设置,表示操作系统的所有用户的默认设置。
    • --global 参数,是用户级别的设置,表示操作系统上所有的属于你这个用户的 Git 仓库都会默认使用的配置,当然也可以对某个仓库指定不同的用户名和Email地址。
    • --local 参数或者无参数,是仓库级别的设置且在仓库目录里设置。
    • -f--file 参数,是文件级别的设置,指定文件作为设置,覆盖环境变量 GIT_CONFIG
  2. 设置文件列表

    • $(prefix)/etc/gitconfig 是系统级别的设置文件
    • $XDG_CONFIG_HOME/git/config 这个是二级用户级别设置文件,一般不推荐创建与设置
    • ~/.gitconfig 这个是用户级别的设置文件
    • $GIT_DIR/config 仓库级别的设置文件
    • 优先级 仓库 > 用户 > 二级用户 > 系统