Git教程之局域網服務器搭建教程(Gitlab)

簡介

Git是一個程序員必備的版本管理軟件,個人使用git用本地庫或者github就夠了。但是當在實驗室或者公司裏面需要幾個人一起合作開發項目時,空間限制、網速限制、人數限制、功能限制就成了很大的問題,因此在局域網搭建一個小型的git服務器是一個非常適宜的解決方案。

相比於純命令行的git服務器,有網頁客戶端圖形化管理界面的gitlab是git server非常好的一種選擇。Gitlab是由烏克蘭程序員 Dmitriy Zaporozhets 和 Valery Sizov 開發,它由 Ruby 寫成。現在分成社區版(ce)和企業版(ee)兩種。這兩者的核心是一樣的,大部分功能也是相同的,不過企業版有很好的客服支持,而社區版就自己摸索嘍,詳細的對比見官網:Giylab各個版本差異

社區版的Gitlab有以下常用功能:

  • CI/CD,就是任務管理
  • 倉庫管理:包括私人/組(內部)/公開三種倉庫,
  • 用戶管理
  • 組管理,可以管理4級權限用戶
  • wiki,支持markdown
  • Project Issue Board,問題跟蹤,bug的記錄、跟蹤和討論
  • Time Tracking,時間線跟蹤(這個我不太懂)
  • Mattermost integration,內建的聊天系統
  • Git LFS,大文件存儲技術

在ubuntu服務器上安裝Gitlab

由於我們實驗室只有ubuntu的服務器,所以這裏主要介紹gitlab在Ubuntu下的搭建教程。安裝前需要確定以下條件:

  • 你擁有root權限
  • 可以操作服務器,或者可以通過ssh登入服務器
  • 配置需求
    • cpu,1核可以承受100用戶,2核承受500用戶(推薦),4核2000用戶,8核5000用戶。。。。。
    • 內存,512MB RAM + 1.5GB交換空間(最低配置),1GB RAM + 1GB交換空間100用戶卡頓,2Gb內存100用戶(推薦)。。。
    • 可以聯網
  • 推薦的操作系統
    推薦操作系統
  • 建議申請一個域名,.cn的一年才70塊,首年30,相信大部分實驗室都用得起,而且由於服務器在實驗室內部,不用備案,哈哈哈哈哈哈哈

安裝過程

  1. 登入ssh(或者在服務器上打開終端)
  2. 安裝依賴項
sudo apt-get update

sudo apt-get install -y curl openssh-server ca-certificates

sudo apt-get install -y postfix
  1. 添加安裝包的地址
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
  1. 設置訪問域名並下載安裝
//有域名的
sudo EXTERNAL_URL="http://git.example.com" apt-get install gitlab-ce
//沒有域名的
sudo apt-get install gitlab-ce

這裏的http://git.example.com需要改成自己的申請的域名,並且需要在域名服務商那裏設置解析到局域網的那個ip,如果沒有域名就可以把前面那段去掉。安裝過程極其緩慢,需要下載500多M的東西,百兆到戶的別說話。
5. 安裝過程無需干預,獨立自主進行,正常安裝結束時可以看到一個可愛的狐狸頭:

foxhead

登入界面

使用域名登入系統,沒有域名的可以在本地使用http://127.0.0.1 登入,或者是喲個http://你的IP地址在其他電腦登入。首次登入需要設置root賬戶的密碼,設置完就可以正常使用了。使用前需要先註冊賬號,然後就可以正常使用了,感覺和小夥伴搞起來把。
gitlabUI

常見問題

Group項目push失敗(403錯誤)

權限分4級,guest,develop,maintain,owner,只有maintain(主管)纔可以創建新的分支,develop可以提交到分支。但是!敲黑板,master分支默認處於保護分支,不可以直接push到master分支,只能push到其他分支。

如何刪除項目

由於gitlab刪除項目的按鈕隱藏較深,gitlab又更新頻繁,網傳的許多方法都是過時的,現在版本的刪除方法是在項目裏點setting->general->advance->remove project在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章