从https://github.com/git/git/tags下载最新的zip包后,解压并开始安装,官方教程地址。
这里记录关键点以便参考:
$ yum install gcc autoconf zlib-devel # 安装依赖
# yum install gcc autoconf zlib-devel asciidoc xmlto # 若需doc则会多2个依赖
$ make configure # 生成configure文件
$ ./configure --prefix=/usr/local/git/ # 生成配置信息,指定安装目录
$ make
# make all doc # 编译全部内容,包括文档
$ make install
# make install install-doc install-html # 安装全部内容
为方便使用,安装后配置环境变量才能使用快捷命令git
。永久配置环境变量有两种方法,一种是直接编辑/etc/profile
,在最后追加
export PATH=$PATH:/usr/local/git/bin
于是在/etc/profile.d
下新建脚本git.sh
,添加以下内容
<aside>
💡 根据/etc/profile
文件内容可以看到,其会读取/etc/profile.d
文件夹下所有的sh内容,使用profile.d
方式更利于维护。
</aside>
# vim /etc/profile.d/git.sh
export GIT_HOME=/usr/local/git
export PATH=$PATH:$GIT_HOME/bin
然后刷新环境变量,测试效果。
$ source /etc/profile
$ echo $GIT_HOME
/usr/local/git
$ git -v
git version 2.40.1
Git 默认对于文件名大小写是不敏感,即ignorecase true
。如果修改了文件名大小写,但是 Git 并没有发现有任何的改动。所以我一般是设为大小写敏感的,难得去git mv
git config core.ignorecase false
Git 默认会跟踪文件的权限修改,即filemode true
,当使用 chmod 后,被修改权限的文件添加到被修改的状态。但这个不是必须的,因为大部分代码是源代码,适配平台的默认属性即可,免得不必要的 git 变更。
git config core.filemode false
如果使用SSH连接且未对密钥设置口令,那么会很方便的使用Git。但如果使用HTTP(S)链接,那么默认情况下每次都要输入用户名密码。Git的凭证系统机制如下: