如题,本篇我们介绍下,git中搭建自己的git服务器
学完本篇,我们就可以在企业、公司内网搭建自己的git服务器(就像github,geesite 等网站一样),可以将我们的远程仓库放到私有云上,提供用户clone、push、fetch等。
为了让演示效果更真实,我新开了一个虚拟机,作为git远程仓库服务器。
docker02 我们的开发机(本地仓库)
docker03 我们的git远程仓库服务器
下面我们开始搭建git私服
#安装git
sudo yum install git -y
#添加git用户
su root
adduser git
在根目录下创建git远程仓库根目录
mkdir /gitrepo
chown -R git:git /gitrepo #将仓库跟目录的属主修改为git用户
#禁止git用户登录到bash。
vi /etc/passwd 文件,将
git:x:1001:1001::/home/git:/bin/bash
修改为
git:x:1001:1001::/home/git:/usr/bin/git-shell
创建一个test裸库
git init --bare test
chown -R git:git /gitrepo
cd /home/git
mkdir .ssh
cd .ssh
touch authorized_keys
chmod 600 authorized_keys
将其他所有需要访问本服务器的git账户的rsa公钥添加到 authorized_keys 文件中。
如 vi authorized_keys, 粘贴
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDp/0iyLeAJxziis0NOhCoXPlrSpnykhWwJYAisfHu0fkZ/mjMdYedrt5/Oemld
xqKthO3zWB4UIgAoqj3i9WFF6Pkdzseoc9nA+dlW/GFlC/oEVJjNzX5zLAQo7CD4hHM99Ii8/45SQU5QSwlRaJEmjeyW17NvIiva
5drYRjlTrp+t0L8BKpNkeVYi9AdCWIYOrFLAXZZDlurMdaMu9IRU7hQ5LsUcMSlfDfJjX8cNoIUEhA3tgyQQ4rtHN59C4RO9pJk6
hgd4HqN5gxFEgfepPIrkDU5i1u1i0BmizrsyRTb4TtlmxWqxQqm+TwZf3umhwbJRVb+7ouSMJk/3qSD3 exkuarbel@163.com
以上这条是docker02上用户的git账户的rsa公钥,放入到docker03上git家目录.ssh目录中的authorized_keys (授权文件)中后,就可以让docker02机器免密登录了。
如还有其他的git账号需要添加,再依次添加即可。
chown -R git:git /home/git
在docker02上测试clone 一下:
cd mygitwork
git clone git@docker03:/gitrepo/test
正克隆到 'test'...
warning: 您似乎克隆了一个空版本库。
ok ,说明git私服搭建成功了,接下来就可以开发了,开发后代码也可以推送到git私服。
git push origin master 推送到git私服
ok!!!!