官方安装详细介绍
https://git-scm.com/download/linux
本文介绍通过源码安装
1、下载安装 git
此实验以 CentOS 7.2 x64 的系统为环境,搭建 git 服务器。
1.1 安装依赖库和编译工具
为了后续安装能正常进行,我们先来安装一些相关依赖库和编译工具
yum install curl-devel@H_301_15@ expat-devel@H_301_15@ gettext-devel@H_301_15@ openssl-devel@H_301_15@ zlib-devel@H_301_15@
1.2 安装编译工具
yum install gcc perl-ExtUtils@H_301_15@-MakeMaker@H_301_15@
1.3 下载 git
选一个目录,用来放下载下来的安装包,这里将安装包放在 /home/javen/Downloads
目录里
cd@H_301_15@ /home/javen/Downloads
到官网https://git-scm.com找一个新版稳定的源码包下载到/home/javen/Downloads
文件夹里
目前最新版本为2.13.3
wget https://www.kernel@H_301_15@.org@H_301_15@/pub/software/scm/git/git-2.13@H_301_15@.3@H_301_15@.tar@H_301_15@.gz@H_301_15@
1.4 解压和编译
解压下载的源码包
tar -zvxf git-2.13@H_301_15@.3@H_301_15@.tar@H_301_15@.gz@H_301_15@
解压后进入 git-2.13.3 文件夹
cd@H_301_15@ git-2.13@H_301_15@.3@H_301_15@
执行编译
make all@H_301_15@ prefix=@H_301_15@/usr/local@H_301_15@/git
编译完成后,安装到 /usr/local/git 目录下
make install prefix@H_301_15@=/usr/local/git@H_301_15@
2、配置环境变量
创建文件/etc/profile.d/git.sh,将下面的内容复制到该文件
export @H_404_109@PATH@H_301_15@=$PATH@H_301_15@:/usr/local/git/bin@H_301_15@:@H_301_15@$PATH@H_301_15@
生效环境变量
source@H_301_15@ /etc/profile
此时我们能查看 git 版本号,说明我们已经安装成功了。
git@H_301_15@ -@H_301_15@-@H_301_15@version@H_301_15@
3、创建 git 账号密码
为我们刚刚搭建好的 git 创建一个账号
useradd -m@H_301_15@ gituser
然后为这个账号设置密码
passwd gituser #这里设置的密码为javen@H_301_15@
4、初始化 git 仓库并配置用户权限
4.1创建 git 仓库并初始化
我们创建 /data/repositories 目录用于存放 git 仓库
mkdir@H_301_15@ -p /data@H_301_15@/repositories@H_301_15@
创建好后,初始化这个仓库
cd@H_301_15@ /data@H_301_15@/repositories/ && git init --bare test.git@H_301_15@@H_301_15@
4.2 配置用户权限
chown@H_301_15@ -R@H_301_15@ gituser:gituser /data@H_301_15@/repositories@H_301_15@
chmod@H_301_15@ 755@H_301_15@ /data@H_301_15@/repositories@H_301_15@
查找 git-shell 所在目录(如果按照刚才的步骤执行,这个位置应该是 /usr/local/git/bin/git-shell,否则请通过 which git-shell 命令查看位置)
,编辑 /etc/passwd 文件,将最后一行关于 gituser 的登录 shell 配置改为 git-shell 的目录
gituser:@H_301_15@x:@H_301_15@500@H_301_15@:@H_301_15@500@H_301_15@:@H_301_15@:/home/gituser@H_301_15@:/usr/local/git/bin/git-shell@H_301_15@
5、使用搭建好的 Git 服务
git clone gituser@10.211.55.3:/data/repositories/test.git
遗留问题:
1、有没有什么好的Web插件来管理git用户以及项目呢?
2、goso、GitLab、Git比起来有何优缺点?
推荐阅读
极速开发微信公众号
IJPay 让支付触手可及
基于 CentOS 搭建 FTP 文件服务
Centos7.3 安装Mysql5.7并修改初始密码
10分钟搭建属于自己的ngork服务器,实现内网穿透
JDK开发环境搭建及环境变量配置