使用gitolite搭建Git服務器

使用gitolite搭建Git服務器

運行環境

  • Ubuntu18.04git

  • gitolitegithub

搭建過程

  1. 安裝好Ubuntu18.04系統vim

  2. 更新系統bash

    sudo apt update
    sudo apt upgrade
  3. 安裝vim服務器

    sudo apt install vim
  4. 安裝gitssh

    sudo apt install git
  5. 建立git倉庫測試

    # 建立git用戶
    sudo adduser git
    
    # 切換到git用戶
    su git
    
    # 進入git用戶目錄
    cd ~
  6. 安裝gitolitecode

    git clone https://github.com/sitaramc/gitolite
    
    mkdir -p $HOME/bin
    
    gitolite/install -to $HOME/bin
  7. 註冊倉庫管理員rem

    新建YourName.pub文件,將客戶端公鑰.ssh/id_rsa.pub複製到裏面,而後註冊爲倉庫管理員get

    vim YourName.pub                           # 複製客戶端公鑰內容,按:wq保存退出
    
    $HOME/bin/gitolite setup -pk YourName.pub  # 註冊倉庫管理員

    也能夠在服務器上新建admin用戶做爲倉庫管理員,方便管理

    # 新建管理員用戶admin
    sudo adduser admin
    
    # 生成SSH公鑰
    su admin
    ssh-keygen -t rsa -C "youremail@example.com"
    cp .ssh/id_rsa.pub /tmp/admin.pub
    
    # 切換回git用戶,將admin用戶註冊爲倉庫管理員
    su git
    cd ~
    $HOME/bin/gitolite setup -pk /tmp/admin.pub

    註冊管理員後會生成兩個文件projects.list, repositories/

    • projects.list保存倉庫信息列表

    • repositories/文件夾裏有管理員倉庫gitolite-admin.git/和測試倉庫testing.git/

    • 新建的倉庫都會保存在repositories/文件中

  8. 管理遠程倉庫

    在已經註冊過的客戶端克隆管理員倉庫

    git clone git@host:gitolite-admin

    管理員倉庫裏有兩個文件conf/gitolite.confkeydir/

    • gitolite.conf管理倉庫信息

    • keydir/保存git成員的公鑰

    添加新成員: 將新成員的公鑰保存到keydir/

    新建倉庫: 修改conf/gitolite.conf文件,添加newrepo倉庫

    repo gitolite-admin
         RW+     =   admin
    
    repo testing
         RW+     =   @all
    
    repo newrepo
         RW+     =   @all

    添加倉庫管理員username

    repo gitolite-admin
         RW+     =   admin
         RW+     =   username
    
    repo testing
         RW+     =   @all
    
    repo newrepo
         RW+     =   @all
  9. 將倉庫信息推送到服務器

    在客戶端更新完倉庫信息後,須要將其推送到服務器才能生效

    git add .
    git commit -m "commit message"
    git push origin master

參考

sitaramc/gitolite

相關文章
相關標籤/搜索