搭建 git 服务器

git
创建于:2020年05月13日 更新于:2020年05月19日

安装 git

yum install git

adduser git // 添加用户
passwd git // 设置密码

创建证书登录
收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。

mkdir -p /home/git/.ssh

// 保存用户公钥
vim /home/git/.ssh/authorized_keys

初始化Git仓库

cd /srv
mkdir gitrepos
chown git:git gitrepo/
cd gitrepos
git init --bare project.git
chown -R git:git project.git

禁用shell登录:

出于安全考虑,第二步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd文件完成。找到类似下面的一行:
git:x:1001:1001:,,,:/home/git:/bin/bash
改为:
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell
这样,git用户可以正常通过ssh使用git,但无法登录shell,因为我们为git用户指定的git-shell每次一登录就自动退出。

//在本地创建版本库
git init

//添加远程仓库
git remote add origin [email protected]:/srv/gitrepos/project.git

//把文件添加到仓库
git add file

//把文件提交到仓库
git commit -m 'desc'

// 把修改提交到远程分支
git push origin [email protected]:/srv/gitrepos/project.git