centos搭建git服务
2019-01-23 本文已影响0人
suchcl
本地安装虚拟机,虚拟中的centos中安装git服务。
1.安装git
yum install git
2.创建一个git用户,用来运行git服务
adduser git
3.创建证书登录
收集需要登录git服务的用户的公钥,就是他们自己的id_rsa.pub文件,把所有的公钥导入到当前用户的用户目录下的.ssh/authorized_keys文件。
比如当前登录的是root用户,我就把需要把需要登录的用户的id_rsa.pub文件内容导入到/root/.ssh/authorized_keys中。
若不清楚用户公钥,可百度“ssh 公钥”详细了解公钥及生成方式。
4.服务器初始化git仓库
git init --bare sample.git
到这个步骤git会创建一个裸仓库,裸仓库没有工作区,因为服务器上的git纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的git仓库都以.git结尾。然后把owner改为git:
chown -R git:git sample.git
5.禁用shell登录
处于安全方面的考虑,创建的git用户不允许登录shell,只可以使用git服务。可以通过修改/etc/passwd来完成
由原来的
git:x:1002:1002::/home/git:/bin/bash
更改为:
git:x:1002:1002::/home/git:/usr/bin/git-shell
6.获取远程仓库地址
获取服务器地址:ifconfig => 191.168.152.138
获取初始化的git仓库地址:/root/git/sample.git
那么我们远程git仓库远程服务器的地址就是:
root@192.168.152.138:/root/git/sample.git
就是说这个地址就是我们在一个客户端通过git clone拉取git服务器仓库代码的服务器地址
7.客户端拉取服务端git代码仓库
就如第6步描述的,
git clone root@192.168.152.138:/root/git/sample.git
到这一步,在linux中搭建git服务的步骤已经全部完成,剩下的就是常规的git的客户端的使用方式了。