centos git server 的搭建

时间:2022-02-11 04:25:16

安装环境  centos7

说明:centos  yum 库里面的git  好像是不区分 客户端和服务器端, 安装 git 以后 就可以创建  仓库,也可以检出 别的 git 仓库的  代码了。所以不用 纠结 找 git server 和 git client。

第一步: yum -y install git  等待 安装完成

centos git server 的搭建

第二步:  查看git  是否正常安装。

centos git server 的搭建

第三步: 添加  用户  useradd git  ,然后 为他设置密码  passd git  。 下面提示密码太短,但是设置成功了。

centos git server 的搭建

第4 步:找个 存放 git 仓库的 目录。 我放在 /git/resp

  mkdir -p  /git/resp

  cd /git/resp

centos git server 的搭建

第5 步: 创建 初始化仓库   git init --bare test.git

centos git server 的搭建

第6步:指定 这个目录的权限   chown -R  git:git resp   ,直接白 resp 目录和子目录 的用户和用户组都指向 git 。  ( 如果不做这一步无法上传 )

centos git server 的搭建

  

第七步:git clone git@ip:/git/resp/test.git

centos git server 的搭建

备注:git clone 用户名@你的服务器ip:仓库路径

备注2:我一般 使用的  tortoisegit ,用法 和 tortoisesvn 差不多。

上面就做完一个git 用户的 登陆了, 但是通过用户名密码登陆,肯定不是我们想要的 下面我们要做的  git 的 证书登陆。

第8步: 回到 /home.git 目录下面  ,

centos git server 的搭建

第九步:  mkdir .ssh  touch  然后在  .ssh目录下面  touch authorized_keys

centos git server 的搭建

第10步: 在 authorized_keys 里面写入你的公钥  vi authorized_keys 然后 写入 你的私钥

centos git server 的搭建

备注: 如果你们团队有 20 个人 ,那么 收集 他们的 公钥 ,然后 一次写在 这个里面就可以了。

第 11 步:clone 代码的时候  直接选择 你的私钥就可以了

centos git server 的搭建

第 12 步: 怎么区分谁是谁上传的呢。  tortoisesvn  右键 设置里面 可以修改 名字和邮箱。

centos git server 的搭建

  

第 13 步: git 这个用户 我们 其实不需要它登陆 。所以应该 禁用它的登陆。

因为 我们只是想禁用 git 这个账户的登陆。

  vi /etc/passwd

git:x:1000:1000:,,,:/home/git:/bin/bash

  改成

git:x:1000:1000:,,,:/home/git:/usr/bin/git-shell

centos git server 的搭建

备注: 正常用户 进入shell 是 执行的 /bin/bash  这个文件 , /usr/bin/git-shell 文件是安装git 的时候 附带的,这里面限制了用户登陆。

centos git server 的搭建

备注:有些人觉得 git 这种  每个人一个 证书,并且 上传用户 是 自己随便改的 ,不安全, A 可能假冒 B 乱改代码。 没错,确实有这种可能,但是一般同一个团队 不会这样做。

如果 你非常想 一个人一套用户密码。那么你大概可以这么干,添加 N个用户 。 设置 这些用户 为同一个 用户组,比如 都归属于 git 这个用户组。 设置 仓库 的  权限 777 ,修改 这些用户的 umask=002 。 这样就每个人都有自己的账号密码了。上面 colen 的地址 每个人也不同( git clone 用户名@你的服务器ip:仓库路径 )。

备注:  centos  yum 库里面的git  好像不区分 客户端和服务器端, 安装 git 以后 就可以创建  仓库,也可以检出 别的 git 仓库的  代码了。

centos git server 的搭建