當前位置:編程學習大全網 - 源碼下載 - 搭建Git服務器及備份服務器

搭建Git服務器及備份服務器

OS:CentOS 7.2

Git:1.8.3.1

備份模式:

以下步驟以雙機備份為例,單機備份同理,只是在鏡像git項目的時候把git url換成單機中的git項目目錄即可。

首先,查看系統軟件庫中是否有git和git的版本:

CentOS 7.2環境下的輸出如下:

CentOS 7.x版本的倉庫中已經附帶了1.8.3.1版本的git,可以直接安裝。

CentOS 6.x中的git是1.7.x版本,自帶庫中git版本低的linux發行版可以添加git1.8.3.1的源來安裝git,但這個操作要求本機能訪問互聯網

其他版本的git理論上也可以,請自行測試

結果最後顯示“安裝完成”或“Complete”表示安裝成功。可以直接使用git命令測試壹下:

輸出如下表示git安裝成功並可用。

創建壹個git用戶,用來提供給外部用戶以git url的方式訪問git庫。

在用戶目錄或其他對外目錄中創建 /git/repos 目錄,用來存放git庫。

註意: 盡量使用git用戶來創建該目錄,方便以後git操作該目錄,如果是使用其他用戶創建的,記得使用以下命令將該目錄的owner改為git:

為了方便訪問,可以在根目錄下創建壹個軟鏈連接到該目錄:

這樣設置後,假如以後有壹個庫叫 test.git ,那麽就可以通過以下url來訪問git庫了:

創建壹個測試庫用來測試備份及連通性。

同主GIT服務器的《安裝git》章節。

同主GIT服務器的《創建git庫目錄》章節。

目錄結構盡量與主git服務器上的結構壹致,如果不壹致,使用軟鏈的形式將git url配置為與主git服務器壹致,這樣保證在切換服務器時,客戶端不用做修改操作。

以上個步驟中創建的 test.git 為例:

這樣,主git服務器中的 test.git 就鏡像到備份機中了。

如果主服務器的git項目發生了變更,可以將變更同步到備份機。

將以上同步命令寫成腳本,添加壹個定時任務來定時同步即可。

(待補充)

備份同步時每次都需要輸入主git服務器的密碼,比較麻煩,也不利於定時同步的腳本操作,可以使用ssh免密登錄的方式,在主服務器上配置備份服務器的公鑰。

壹路Enter(回車鍵),完成後會打印出密鑰的生成位置,通常在用戶主目錄的 .ssh 目錄中。默認情況下會生成以下兩個文件:

壹定要註意上述命令中的第三步,權限要設置對,否則認證不過去不能免密登錄。

如果在實際運行中,主git服務器掛了壹段時間,在這段時間裏壹直是備份git服務器在工作,那麽在修復好主服務器後需要將這壹段時間的變更同步回主服務器。

操作完成後備份庫自上壹次同步後的更改都推送到了主庫。

  • 上一篇:LINUX教程目錄:
  • 下一篇:java 幫我看下這幾個註解是什麽意思 謝謝了
  • copyright 2024編程學習大全網