基于 CentOS 7 搭建 Git服务器

  Git 是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

⒈安装依赖库和编译工具

  1.安装依赖库

yum install -y curl-devel expat-devel gettext-devel openssl-devel zlib-devel

  2.安装编译工具

yum install -y gcc perl-ExtUtils-MakeMaker

⒉移除已安装的Git(如没有安装过可以忽略此步骤)

yum remove git

⒊下载安装Git

  1.新建下载目录

  选一个目录,用来放下载下来的安装包,这里将安装包放在 /usr/local/src 目录里

cd /usr/local/src

  2.到官网找一个新版稳定的源码包下载到 /usr/local/src 文件夹里(我这里目前最新为2.22)

wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.22.0.tar.gz

  3.解压后编译

    ⅰ解压

tar -zvxf git-2.22.0.tar.gz

    ⅱ编译

cd git-2.22.0/    进入解压目录
make all prefix=/usr/local/git    执行编译

    ⅲ编译完成后, 安装到 /usr/local/git 目录下

make install prefix=/usr/local/git

⒋配置Git

  1.配置环境变量

    ⅰ将 git 目录加入 PATH

    将原来的 PATH 指向目录修改为现在的目录

echo 'export PATH=$PATH:/usr/local/git/bin' >> /etc/bashrc

    ⅱ使更新后的环境变量生效

source /etc/bashrc

    ⅲ测试环境变量是否生效

git --version

    此时我们能查看 git 版本号,说明我们已经安装成功了。

  2.创建 git 账号密码

    ⅰ创建账号

    为我们刚刚搭建好的 git 创建一个账号

useradd -m fanqi

    ⅱ创建密码

    然后为这个账号设置密码(输入命令后系统要求输入密码,连续两次输入密码即可创建)

passwd fanqi

  3.初始化 git 仓库并配置用户权限

    ⅰ创建 git 仓库并初始化

    我们创建 /data/repositories 目录用于存放 git 仓库

mkdir -p /data/repositories    创建目录
cd /data/repositories/ && git init --bare test.git    进入这个目录并初始化这个仓库

    ⅱ配置用户权限

    给 git 仓库目录设置用户和用户组并设置权限

chown -R fanqi:fanqi /data/repositories
chmod 755 /data/repositories

    ⅲ更改git的shell为git-shell

      ⑴查找git-shell所在目录

      如果按照刚才的步骤执行, 这个位置应该是 /usr/local/git/bin/git-shell, 否则请通过 which git-shell 命令查看位置

      ⑵编辑 /etc/passwd 文件,将最后一行关于 gituser 的登录 shell 配置改为 git-shell 的目录(安全目的, 限制 git 账号的 ssh 连接只能是登录 git-shell)

fanqi:x:500:500::/home/fanqi:/usr/local/git/bin/git-shell

    ⅳ使用搭建好的 Git 服务,克隆 test repo 到本地

cd ~ && git clone fanqi@123.207.27.137:/data/repositories/test.git
原文地址:https://www.cnblogs.com/fanqisoft/p/11295185.html