企业项目管理、ORK、研发管理与敏捷开发工具平台

网站首页 > 精选文章 正文

技术篇,多人协作开发之 git 服务器搭建

wudianyun 2025-03-30 21:47:02 精选文章 23 ℃

在一个多人协作开发的项目中,大家共同使用同一个测试服务器,为了避免代码提交时的发生冲突,这时使用 git 进行代码管理再合适不过了,今天就跟大家讲一下如何在 centos 上面进行 git 服务器的搭建。

安装 git

yum install git

默认情况下,linux 系统自带 git 工具,不需要特别安装。



创建一个git用户,用来运行git服务

sudo adduser git -d /home/git -s /usr/bin/git-shell -G git

说明:

添加一个用户名为 git 的用户,指定该用户的家目录为 /home/git ,禁止该用户通过 shell 登录,将该用户划分到组 git 下面。

创建证书登录

mkdir /home/git/.ssh && chmod 700 /home/git/.ssh

touch 700 /home/git/.ssh/authorized_keys

chmod 600 /home/git/.ssh/authorized_keys

说明:

在刚才创建的 git 用户的家目录下创建 ssh 授权公钥存放文件,该文件存放每个 git 客户端的 ssh 公钥,即 id_rsa.pub 文件中的内容,一行一个。

初始化 git 仓库

cd /home/git/
git init --bare test.git

说明:

在 git 用户家目录下面创建一个 test.git 仓库



在客户端进行连接该仓库

在客户端连接远程仓库的前台是该客户端的公钥(即 id_ras.pub 文件里面的内容)已经添加到服务器
/home/git/.ssh/authorized_keys 文件中。

git clone git@vmhost:/home/git/test.git

其中 vmhost 是你的服务器 IP



创建一个新文件 test.txt

cd test && touch test.txt


查看状态并提交

git status
git add .
git commit -m "create test.txt"
git push origin master


提示

clone 远程仓库时一直要求输入密码,请检查客户端公钥是否已正确添加到服务端
/home/git/.ssh/authorized_keys 文件中。

git 可以拉取,但推送更新时报错,请检查 git 用户对远程仓库所在的路径是否有写的权限。

cd /home/git && chmod -R 777 test.git


这时候再进行推送就可以成功推送上去了。


Tags:

最近发表
标签列表