安装 Git

在你开始使用 Git 前,需要将它安装在你的计算机上。 即便已经安装,最好将它升级到最新的版本。 你可以通过软件包或者其它安装程序来安装,或者下载源码编译安装。

NOTE

本书写作时使用的 Git 版本为 2.8.0。 我们使用的大部分命令仍然可以在很古老的 Git 版本上使用,但也有少部分命令不好用或者在旧版本中的行为有差异。 因为 Git 在保持向后兼容方面表现很好,本书使用的这些命令在 2.8 之后的版本应该有效。

在 Linux 上安装

如果你想在 Linux 上用二进制安装程序来安装基本的 Git 工具,可以使用发行版包含的基础软件包管理工具来安装。 以 Fedora 为例,如果你在使用它(或与之紧密相关的基于 RPM 的发行版,如 RHEL 或 CentOS),你可以使用 dnf:

$ sudo dnf install git-all#这里的git-all包含了Git全套组件,一般使用git即可

如果你在基于 Debian 的发行版上,如 Ubuntu,请使用 apt:

$ sudo apt install git-all

要了解更多选择,Git 官方网站上有在各种 Unix 发行版的系统上安装步骤,网址为 https://git-scm.com/download/linux。

在 macOS 上安装

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

一是先安装包管理器Homebrew,然后通过Homebrew安装Git(推荐):

$ brew install git

第二种方法更简单,但需要下载一个巨大的XCode。直接从AppStore安装Xcode,Xcode集成了Git,不过默认没有安装,你需要运行Xcode,选择菜单“Xcode”→“Preferences”,在弹出窗口中找到“Downloads”,选择“Command Line Tools”,点“Install”就可以完成安装了。

在 Windows 上安装

在Windows上使用Git,也有两种安装方法。

第一种是直接从Git官网直接下载安装程序,然后按默认选项安装即可。安装完成后,在开始菜单里找到“Git”→“Git Bash”,蹦出一个类似命令行窗口的东西,就说明Git安装成功。

第二种是先安装一个包管理器,推荐Scoop,然后在PowerShell中通过以下命令安装Git:

C:\> scoop install git

安装完成后,在PowerShell下运行命令git -v显示Git版本,可看到如下输出:

┌─────────────────────────────────────────────────────────┐
│Windows PowerShell                                 - □ x │
├─────────────────────────────────────────────────────────┤
│Windows PowerShell                                       │
│Copyright (C) Microsoft Corporation. All rights reserved.│
│                                                         │
│PS C:\Users\liaoxuefeng> git -v                          │
│git version 2.48.1.windows.1                             │
│PS C:\Users\liaoxuefeng>                                 │
│                                                         │
└─────────────────────────────────────────────────────────┘

使用包管理器安装Git只需一条命令,且升级非常方便。Debian/Ubuntu Linux的APT、macOS的Homebrew、Windows的Scoop在命令行下的安装、升级、卸载命令都是类似的,例如,升级Git,三种包管理器对应的命令分别是:

  • sudo apt update git
  • brew update git
  • scoop update git

可以说熟悉一种包管理器的用法后,在其他平台也可迅速上手,推荐使用。

从源代码安装

有人觉得从源码安装 Git 更实用,因为你能得到最新的版本。 二进制安装程序倾向于有一些滞后,当然近几年 Git 已经成熟,这个差异不再显著。

如果你想从源码安装 Git,需要安装 Git 依赖的库:autotools、curl、zlib、openssl、expat 和 libiconv。 如果你的系统上有 dnf (如 Fedora)或者 apt(如基于 Debian 的系统), 可以使用对应的命令来安装最少的依赖以便编译并安装 Git 的二进制版:

$ sudo dnf install dh-autoreconf curl-devel expat-devel gettext-devel \
  openssl-devel perl-devel zlib-devel
$ sudo apt-get install dh-autoreconf libcurl4-gnutls-dev libexpat1-dev \
  gettext libz-dev libssl-dev

为了添加文档的多种格式(doc、html、info),需要以下附加的依赖:

$ sudo dnf install asciidoc xmlto docbook2X
$ sudo apt-get install asciidoc xmlto docbook2x

NOTE

使用 RHEL 和 RHEL 衍生版,如 CentOS 和 Scientific Linux 的用户需要 开启 EPEL 库 以便下载 docbook2X 包。

如果你使用基于 Debian 的发行版(Debian/Ubuntu/Ubuntu-derivatives),你也需要 install-info 包:

$ sudo apt-get install install-info

如果你使用基于 RPM 的发行版(Fedora/RHEL/RHEL衍生版),你还需要 getopt 包 (它已经在基于 Debian 的发行版中预装了):

$ sudo dnf install getopt

此外,如果你使用 Fedora/RHEL/RHEL衍生版,那么你需要执行以下命令:

$ sudo ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi

以此来解决二进制文件名的不同。

当你安装好所有的必要依赖,你可以继续从几个地方来取得最新发布版本的 tar 包。 你可以从 Kernel.org 网站获取,网址为 https://www.kernel.org/pub/software/scm/git, 或从 GitHub 网站上的镜像来获得,网址为 https://github.com/git/git/releases。 通常在 GitHub 上的是最新版本,但 kernel.org 上包含有文件下载签名,如果你想验证下载正确性的话会用到。

接着,编译并安装:

$ tar -zxf git-2.8.0.tar.gz
$ cd git-2.8.0
$ make configure
$ ./configure --prefix=/usr
$ make all doc info
$ sudo make install install-doc install-html install-info

完成后,你可以使用 Git 来获取 Git 的更新:

$ git clone git://git.kernel.org/pub/scm/git/git.git