Git 伺服器搭建
上一章中我們遠端倉庫使用了 Github,Github 公開的專案是免費的,但是如果你不想讓其他人看到你的專案就需要收費。
這時我們就需要自己搭建一台Git伺服器當作私有倉庫使用。
接下來我們將以 Centos 為例來建立 Git 伺服器。
1、安裝Git
$ yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel $ yum install git
接下來我們 建立一個git用戶群組和用戶,用來執行git服務:
$ groupadd git $ adduser git -g git
2、建立憑證登入
收集所有需要登入的使用者的公鑰,公鑰位於id_rsa.pub檔案中,把我們的公鑰導入到/home/git/.ssh/authorized_keys檔案裡,一行一個。
如果沒有該檔案建立它:
$ cd /home/git/ $ mkdir .ssh $ chmod 700 .ssh $ touch .ssh/authorized_keys $ chmod 600 .ssh/authorized_keys
#3、初始化Git倉庫
首先我們選定一個目錄作為Git倉庫,假設是/home/gitrepo/w3cschoolcc.git,在/home/gitrepo目錄下輸入指令:
$ cd /home $ mkdir gitrepo $ chown git:git gitrepo/ $ cd gitrepo $ git init --bare w3cschoolcc.git Initialized empty Git repository in /home/gitrepo/w3cschoolcc.git/
以上指令Git建立一個空倉庫,伺服器上的Git倉庫通常都以.git結尾。然後,把倉庫所屬使用者改為git:
$ chown -R git:git w3cschoolcc.git
4、複製倉庫
$ git clone git@192.168.45.4:/home/gitrepo/w3cschoolcc.git Cloning into 'w3cschoolcc'... warning: You appear to have cloned an empty repository. Checking connectivity... done.
192.168.45.4 為 Git 所在伺服器 ip ,你需要將其修改為你自己的 Git 服務 ip。
這樣我們的 Git 伺服器安裝就完成了,接下來我們可以停用 git 使用者透過shell登錄,可以透過編輯/etc/passwd檔案完成。找到類似下面的一行:
git:x:503:503::/home/git:/bin/bash
改為:
git:x:503:503::/home/git:/sbin/nologin