QNAP GitLab安裝並與SourceTree遠端同步

之前一直想在Nas做Git Server,但由於QNAP的關係,在權限上有許多限制,用了之後發現並不是很順手,尤其在遠端遙控方面,不知為何許多GUI並無法連線,就連QPKG的Git都被QNAP給拿掉了,看來他們是不太希望我們在NAS上使用Git。
我在嘗試解決GUI與Git Server無法打通時發現了GitLab,研究後發現其內容就是我想要的,而且QNAP還有支援喔!

    1. GitLab安裝步驟官網已經描述得非常清楚,就不多做說明。
    2. 安裝完後第一次登入介面會出現此畫面
      基本上就是請你更新root的預設密碼。
      更新完會進入root帳號的管理畫面,但我們並不會使用root帳號當作版本控制的帳號,請直接登出後建立一個新的帳號。
      screen-shot-2016-12-27-at-11-00-22-pm
    3. 登入後建立一個新的Project,我們會發現GitLab已經幫我把們與遠端連線的SSH URL產生好了。
      screen-shot-2016-12-27-at-11-11-12-pm
      這裡請注意,網站上的URL的localhost請記得改成自己的domain或是IP,user name就是git沒錯!

    4. 再來我們要建立SSH金鑰,基本上SSH金鑰的概念有點像鑰匙(public key)跟鎖(private key),一個鎖可以打好幾副相同的鑰匙交給不同人,也就是一個Client可以將他的鑰匙放到好多台Server上。因此當我們今天要透過SSH認證登入GitLab時,我們要先在我們的電腦上創立好鑰匙跟鎖,再將鎖交給Server。這樣在登入Server時,Server就會將驗證資料鎖起來(加密)並交給Client解密後傳回給Server驗證,如果正確就登入成功。
      在github內有詳細的SSH KEY產生步驟
      確認有沒有已存在的SSH KEY,如果有就直接使用原本的KEY就好,當然一台電腦上要有好幾組SSH KEY也是可以,但今天不討論這個。

      如果沒有,則先創建

      ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

      Mail的部分為註解,不一定要填入信箱,可以填入使用者或是Client的裝置名稱方便紀錄。

    5. 透過指令取得公開金鑰:
      cat ~/.ssh/id_rsa.pub

      screen-shot-2016-12-27-at-11-59-48-pm
      可以在金鑰內容上看到我們當初輸入的註解。

    6. 在Profile settings 內設定SSH KEY。
      screen-shot-2016-12-28-at-12-11-27-am
    7. 到這裡就完成囉,可以先使用Command 連接GitLab測試,如果看到一樣的畫面就代表成功。
      screen-shot-2016-12-28-at-12-14-55-am
    8. 使用SourceTree Clone。
      screen-shot-2016-12-28-at-12-21-21-am