您的位置:首页 > 其它

搭建自己的Git仓库

2018-06-22 11:56 113 查看

首先你需要准备自己的服务器;

    在自己的服务器上,需要做以下准备工作:

  • 安装git
  • 新建一个账户用于git操作
  • 创建git存储文件夹;
  • 初始化仓库

一、安装git

    sudo apt-get install git
    yum install git
二、创建用于管理git的账户

1.创建账户

    按照惯例,创建一个git:git账户用作git的操作账户(默认会添加到git属组):

    useradd git
    groups git
    //git:git

    之后需要将git账户的bash更改为

    /usr/bin/git-shell

   修改该方法为用vi修改passwd文件    

vi /etc/passwd
    找到刚刚创建的git账户,更改如下:

        

    修改之后,不能够通过git远程连接bash。

2.账户权限

    经过以上步骤,我们获得了一个用于进行git操作的账户。如果服务器上已经存在git的仓库,那么我们已经可以进行git操作,例如(图中的马赛克为你的服务器地址,格式为:    用户名(git) @ 服务器地址(192.***.**.**) : git仓库地址

    但是现在访问git是需要输入密码的,所以我们一般会采用ssh密钥的方式进行身份认证,做法如下:
    
    检查你的 ~/.ssh目录,你应当会发现id_rsa(密钥)以及id_rsa.pub(公钥)两个文件(默认文件名),钥匙一一成对,可以重复使用。    接着我们在服务器上用root账户打开git账户的目录,执行以下操作

    mkdir .ssh
    vi .ssh/authorized_keys
    在vi编辑器中,把id_rsa.pub中的内容复制进去,然后保存。为了安全考虑,这里应该将.ssh以及authorized_keys的权限分别限制为700和600:
    chmod 700 .ssh
    chmod 600 .ssh/authorized_keys
    经过以上操作,我们可以在客户端执行以下命令
    

    把密钥添加之后就可以直接上面的clone命令,免除输入密码的烦恼。


三、创建git存储文件夹

    要将代码存储在自己的服务器上,我们需要在服务器上新建一个文件夹用于存储代码。要求git账户拥有这个文件夹的访问权限以及写入权限;在新建文件夹之后,我们我们将文件夹的拥有者更改为git: 

$ chown -R git:git 你的文件夹地址

    这样就能保证git账户对于这个文件夹拥有完全的访问权限以及修改权限;


四、初始化仓库

1. 在服务器初始化一个裸仓库

    首先,利用拥有管理员权限的账户在你的文件夹地址下创建一个裸仓库,裸仓库适用于中心仓库(服务器),初始化之后的裸仓库是不含有Working tree的。

git init 你的仓库名称(test.git) --bare

这里 * 为仓库的名称,初始化完成之后,会在文件夹(test.git是一个文件夹,添加git后缀是一种好习惯)生成如下结构:

2. 在本地拉取代码

    在服务器创建完成之后,就可以在本地对代码进行拉取;
git clone 用户名(git) @ 服务器地址(192.***.**.**) : git仓库地址(/git/)  你的仓库名称(test.git)

    因为是裸库,你应该会看到以下信息
Cloning into '**'...warning: You appear to have cloned an empty repository.    首次推送,将git push到origin/master: 以上

阅读更多
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: