Linux系统下安装git(开发向)
(1).参考文献
官网在线教程:https://git-scm.com/book/zh/v2
官方网站:https://git-scm.com/
(2).实验环境
2核2G CentOS7.6.1810
(3).安装git
1)yum或dnf安装
[root@VM-0-17-centos ~]# dnf -y install git-all
2)源码安装
安装依赖包
[root@VM-0-17-centos ~]# dnf -y install dh-autoreconf curl-devel expat-devel gettext-devel openssl-devel perl-devel zlib-devel #为了添加文档的多种格式(doc、html、info),需要以下附加依赖 [root@VM-0-17-centos ~]# dnf -y install asciidoc xmlto docbook2X
编译安装
[root@VM-0-17-centos ~]# tar xvf git-2.9.5.tar.xz [root@VM-0-17-centos ~]# cd git-2.9.5/ [root@VM-0-17-centos git-2.9.5]# make configure GIT_VERSION = 2.9.5 GEN configure [root@VM-0-17-centos git-2.9.5]# ./configure --prefix=/usr [root@VM-0-17-centos git-2.9.5]# echo $? #检查上一个命令是否有异常 0 [root@VM-0-17-centos git-2.9.5]# make all doc info make[1]: Leaving directory `/root/git-2.9.5/Documentation' make -C Documentation info make[1]: Entering directory `/root/git-2.9.5/Documentation' GEN doc.dep make[2]: Entering directory `/root/git-2.9.5' make[2]: `GIT-VERSION-FILE' is up to date. make[2]: Leaving directory `/root/git-2.9.5' make[1]: Leaving directory `/root/git-2.9.5/Documentation' make[1]: Entering directory `/root/git-2.9.5/Documentation' make[2]: Entering directory `/root/git-2.9.5' make[2]: `GIT-VERSION-FILE' is up to date. make[2]: Leaving directory `/root/git-2.9.5' DB2TEXI user-manual.texi /bin/sh: line 1: docbook2x-texi: command not found make[1]: *** [user-manual.texi] Error 127 make[1]: Leaving directory `/root/git-2.9.5/Documentation' make: *** [info] Error 2
此时可以看到会报错"docbook2x-texi: command not found",我查了一圈发现,实际上已经安装(docbook2X),这里只需要设置一个软链接。
[root@VM-0-17-centos git-2.9.5]# ln -s /usr/bin/db2x_docbook2texi /usr/bin/docbook2x-texi
之后,重新执行"make all doc info",并继续安装
[root@VM-0-17-centos git-2.9.5]# make all doc info [root@VM-0-17-centos git-2.9.5]# echo $? 0 [root@VM-0-17-centos git-2.9.5]# make install install-doc install-html install-info [root@VM-0-17-centos git-2.9.5]# echo $? 0
以上就安装好了。
(4).基础配置
配置用户名和邮件地址。这一点很重要,因为每一个 Git 提交都会使用这些信息,它们会写入到你的每一次提交中,不可更改。
[root@VM-0-17-centos ~]# git config --global user.name "John Doe" [root@VM-0-17-centos ~]# git config --global user.email johndoe@example.com
注意:如果使用了 --global
选项,那么该命令只需要运行一次(除非设置错误),因为之后无论你在该系统上做任何事情, Git 都会使用那些信息。 当你想针对特定项目使用不同的用户名称与邮件地址时,可以在那个项目目录下运行没有 --global
选项的命令来配置。
配置文本编辑器(这里只记录下命令)。当 Git 需要你输入信息时会调用它, 如果未配置,Git 会使用操作系统默认的文本编辑器。(Linux一般时vi或vim)。
[root@VM-0-17-centos ~]# git config --global core.editor emacs
查看配置信息,可以使用git config --list查看所有配置信息,或者git config [key]查看某一项配置信息,还可以使用--global、--local、--system来查看指定文件中的配置信息。
[root@VM-0-17-centos ~]# git config --list user.name=John Doe user.email=johndoe@example.com [root@VM-0-17-centos ~]# git config user.name John Doe
你可能会看到重复的变量名,因为 Git 会从不同的文件中读取同一个配置(例如:/etc/gitconfig
与 ~/.gitconfig
)。 这种情况下,Git 会使用它找到的每一个变量的最后一个配置。
由于 Git 会从多个文件中读取同一配置变量的不同值,因此你可能会在其中看到意料之外的值而不知道为什么。 此时,你可以查询 Git 中该变量的原始值,它会告诉你哪一个配置文件最后设置了该值。
[root@VM-0-17-centos ~]# git config --show-origin user.name file:/root/.gitconfig John Doe
(5).扩展
Git 自带一个 git config 的工具来帮助设置控制 Git 外观和行为的配置变量。 这些变量存储在三个不同的位置:
1、 /etc/gitconfig 文件: 包含系统上每一个用户及他们仓库的通用配置。 如果在执行 git config 时带上 --system 选项,那么它就会读写该文件中的配置变量。 (由于它是系统配置文件,因此你需要管理员或超级用户权限来修改它。)
2、~/.gitconfig 或 ~/.config/git/config 文件:只针对当前用户。 你可以传递 --global 选项让 Git 读写此文件,这会对你系统上 所有 的仓库生效。
3、当前使用仓库的 Git 目录中的 config 文件(即 .git/config):针对该仓库。 你可以传递 --local 选项让 Git 强制读写此文件,虽然默认情况下用的就是它。 (当然,你需要进入某个 Git 仓库中才能让该选项生效。)
每一个级别会覆盖上一级别的配置,所以 .git/config 的配置变量会覆盖 /etc/gitconfig 中的配置变量。
你可以通过以下命令查看所有的配置以及它们所在的文件:
[root@VM-0-17-centos ~]# git config --list --show-origin file:/root/.gitconfig user.name=John Doe file:/root/.gitconfig user.email=johndoe@example.com