搭建git私有仓库

前言

github毕竟是公开的,而私有仓库又得花钱买。所以我们可以想办法搭建一个私有的,只自己公司使用的。

搭建github私有仓库

首先找一台能联网的服务器,安装相关的软件包

[root@localhost ~]# yum install -y git

添加 git 用户并设置用户登陆:

[root@localhost ~]# useradd -s /usr/bin/git-shell git

设置 git 用户的 shell 的目的是为了不让 git 用户远程登陆

创建 authorized_keys 文件,并更改属主、属组和权限,用来存客户端机器上的公钥

[root@localhost ~]# cd /home/git/
[root@localhost ~]# mkdir .ssh
[root@localhost ~]# touch .ssh/authorized_keys
[root@localhost ~]# chown -R git.git .ssh
[root@localhost ~]# chmod 600 .ssh/authorized_keys

创建存储 git 代码的仓库

[root@localhost git]# mkdir /data/gitroot
[root@localhost git]# cd /data/gitroot/
[root@localhost git]#git init --bare sample.git 
# 会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,
# 所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾
[root@localhost git]# chown -R git.git sample.git

以上操作是在 git 服务器上做的,平时 git 服务器是不需要开发人员登录修改代码的,它仅仅是充当着一个服务器的角色,就像 github 一样,平时操作都是在我们自己的 pc 上做的。

客户端使用

首先要把客户端上的公钥放到 git 服务器上 /home/git/.ssh/authorized_keys 文件里

在客户端上(自己pc)克隆远程仓库

此时就可以在当前目录下生成一个sample的目录,这个就是我们克隆的远程仓库了。进入到这里面,可以开发一些代码,然后push到远程。

我们来操作试试:

进入目录下并写入内容

我们还要设置 git 的全局变量

我们提交修改并上传到仓库

我们来看看是否修改成功了

删除本机上的sample目录,再从仓库中克隆,发现和我们上交时相同,修改成功。github私有仓库搭建成功了。

最后更新于

这有帮助吗?