Liunx centos 搭建git

git搭建 当你看了很多教程无果的时候,希望本篇文章给你带来帮助

新的Liunx服务器

通过终端登录 ssh root@xx.�xxx.xxx.xx

当第一次登录的时候需要认证一下服务地址,可以正常登录就跳过该步骤 ssh-keygen -R "xx.�xxx.xxx.xx"

安装git

yum install git

yum install vim

创建一个用户名为git 来用于管理git仓库

添加账户adduser git

设置密码 passwd git 将会用于git仓库登录 按照提示设置即可

初始化仓库

找到一个文件夹,也可以单独创建一个文件夹mkdir ios

进入文件夹中 cd ios

接下来初始化仓库 git init --bare Test.git(不要用git init初始化,否则等推流的时候会提示仓库不是bare初始化的)

权限设置

因为开始设置的git用于只用于管理git仓库,那么就需要把初始化的Test.git 交给git用户

chown -R git:git Test.git(避免出错在ios文件夹的路径下设置)(-R是遍历目录下的子文件,这样才会把git仓库的权限都转移过去)

证书设置

当完成上述操作时,不能正常的实现推拉流的话,那就需要设置一下证书

首先,再开启一个终端 生成本地的.Pub公钥(不要用Liunx服务的)

ssh-keygen -t rsa之后一路回车

完成之后cat ~/.ssh/id_rsa.pub输入本机的公钥

然后在回到服务的终端上Vim 进入 /home/git/.ssh/authorized_keys中把刚才本机的ssh-rsa都粘贴进入

o进入编辑 ,粘贴之后:wq保存退出

再重启一下 shhd 认证service sshd restart

这样就完成证书的配置

打开服务的RSA 认证

在/ etc / SSH / sshd_config中找到以下三个

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

把前面的#删掉就相当于取消注释,让其生效,(光标移动到#上快捷键x

最后禁止shell 登录

在/etc/passwd 中 找到 :git:x:1001:1001:,,,:/home/git:/bin/bash
改为:git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

这样做的目的是为了防止使用开始创建的git用户登录服务…剩下的就不多解释了

补充

  1. 当自己 git clone [email protected]:/ios/Test.git是不需要输入密码的,因为你已经在authorized_keys加入了你的.pub公钥,当你把地址给你的队友的时候需要的git用户的密码让其登录,或者让其也生成一份公钥放入authorized_keys中,那样他也不用输入密码登录。
  2. 当克隆下来仓库时,第一次要remote到远端,作为origin的源点,也是顾名思义。当有了源点之后就可以实现 commit 到远程仓库,否则只是在本地git中提交了,根据配置过程中是这么理解的。

你可能感兴趣的:(Liunx centos 搭建git)