想到 Gitlab 就必定會想到 SVN,因為兩者都是程式碼管理系統,作為開發人員來説,用習慣了 SVN 的圖形化介面和 SVN 程式碼更新和提交的方式,
可能就會覺得使用 git 會比較麻煩,其實不然 git 使用起來非常方便,並且好處也不少,git 後面會成為一種流行和趨勢。所以在這兒簡單的介紹 Gitlab
站羣服務器的搭建和 git 的一些基本操作使用。

Git 的優點和缺點介紹
優點
1 、適合分散式開發,強調個體
2 、公共站羣服務器壓力和資料量都不會太大
3 、速度快、靈活
4 、任意兩個開發者之間可以很容易的解決衝突
5 、離線可以正常提交程式碼和工作
缺點
1 、學習週期相對而言比較長
2 、不符合常規思維
3 、程式碼保密性差,一旦開發者把整個庫克隆下來就可以完全公開所有程式碼和版本資訊
準備環境
Ubuntu16.04 server
安裝介紹
主要記錄在 Ubuntu 16.04 操作系統中搭建 GitLab 站羣服務器的操作記錄,以下是操作步驟(主要參考資料:https://about.gitlab.com/downloads/#ubuntu1604)
Gitlab 安裝
1. 安裝依賴包
sudo apt-get install curl openssh-server ca-certificates postfix
注:執行完成後,出現郵件配置,選擇 Internet 那一項(不帶 Smarthost 的)
2. 利用清華大學的鏡像站羣(https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/)來進行主程式的安裝
首先信任 GitLab 的 GPG 公鑰
curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add – &>/dev/null
使用 root 使用者修改配置檔案
vi /etc/apt/sources.list.d/gitlab-ce.list
#新增以下內容
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main
vi /etc/gitlab/gitlab.rb
external_url ‘http://172.16.81.91/’
安裝 gitlab-ce
sudo apt-get update
sudo apt-get install gitlab-ce
3. 啓動 sshd 和 postfix 服務
service sshd start
service postfix start
4. 新增防火牆規則
sudo iptables -A INPUT -p tcp -m tcp –dport 80 -j ACCEPT
5. 啓動各項服務
sudo gitlab-ctl reconfigure
6.. 檢查 GitLab 是否安裝好並且已經正確執行
sudo gitlab-ctl status
#如果得到類似下面的結果,則説明 GitLab 執行正常

7. 瀏覽 web 頁面並設定密碼
http://172.16.81.91/

 
8. 建立組

 
9. 新增 ssh key
git 倉庫之間的程式碼傳輸協議主要使用 ssh 協議。而一般搭建 gitlab 的時候使用的 git 使用者是沒有密碼的,因此直接 ssh 是不能登入的,就需要使用 ssh-keygen 上傳公鑰,使用非對稱加密傳輸。下面講述如何上傳你的 ssh 公鑰:
生成 sshkey
在終端中敲下面的命令,第一步會生成一對私鑰和公鑰,分別存在 ~/.ssh/id_rsa 和~/.ssh/id_rsa.pub 中。第二步檢視公鑰字串。
ssh-keygen -t rsa -C “ 郵箱地址”
cat ~/.ssh/id_rsa.pub
在面板上依次點選Profile Settings –> SSH Keys –> Add SSH Keys 。然後把上一步中的 id_rsa.pub 中的內容拷貝出來貼上到輸入框中,儲存。

完成上面兩步之後就成功的新增了 sshkey 了,然後就可以上傳程式碼了。
10. 建立專案
建立專案 Test_Project

下一步,選擇組,輸入專案名

下一步,建立完成

在專案下面會有 git 的操作指南教你如何操作

完成建立專案!
至此,基於 Ubuntu 16.04 x64 操作系統的 GitLab 站羣服務器搭建工作就完成了!