[教學]Mac GitLab + SourceTree 版本控管 設定教學

螢幕快照 2018-06-07 下午2.45.34.png

最近因為 MS 收購 GitHub ,大家挫勒等,所以很多都移到GitLab

這邊簡單教大家基本的設定方式

我自己本身是使用Eeclipse 開發,因為不想裝太多plugin 在裡面

所以這次使用GitLab + SourceTree 的組合 


(1)首先必須先安裝SourceTree 輔助工具,

安裝步驟我就不特別說了

中間會有個要選使用的平台 可以先跳過不選沒差

https://www.sourcetreeapp.com/

螢幕快照 2018-06-07 下午2.52.53.png


(2)註冊 Gitlab 帳號,這很簡單我就不特別說了,建立好帳號後,收信認證即可!

https://gitlab.com/

螢幕快照 2018-06-07 下午2.54.29.png


(3) 在 Gitlab 登入,並新增一個專案

Project name 必填,

Project description (optional) 敘述看你要不要寫都可以

Visibility Level 看你專案要設定什麼等級

螢幕快照 2018-06-07 下午2.56.02.png


(4) 產生 SSHKey

在右上點擊自己的圖像,然後選擇Settings

螢幕快照 2018-06-07 下午2.59.19.png

在左方會看到一個 SSH Keys 

螢幕快照 2018-06-07 下午2.59.27.png

然後你會看到這頁key的地方就是等等要輸入key的地方

螢幕快照 2018-06-07 下午3.01.52.png


(5) 打開終端機 輸入 ls -al ~/.ssh

如果看到 No such file or directory 代表還沒生成過 
 

如果看到下面這種,就代表有生成過 

WUNTWCEML103:~ leeray$  ls -al ~/.ssh

total 16

drwx------   4 leeray  AP\Domain Users   136  6  7 12:19 .

drwxr-xr-x+ 37 leeray  AP\Domain Users  1258  6  7 12:19 ..

-rw-------   1 leeray  AP\Domain Users  1679  6  7 12:19 id_rsa

-rw-r--r--   1 leeray  AP\Domain Users   410  6  7 12:19 id_rsa.pub

id_rsa = 私鑰

is_rsa.pub = 公鑰


  (6) 如果沒執行過,請先執行 

ssh-keygen -t rsa -C "ABC@gmail.com"  (ABC@gmail.com 請自行更換)

輸入會跳出密碼設定,不需要可直接Enter 帶過

之後會看到

The key fingerprint is:

SHA256:QyAimJ5K6asfDKfHIKsAnNJGUA+hcbKcDGiRZ17s “ABC@gmail.com”

The key's randomart image is:

+---[RSA 2048]----+

|%XB +.oo         |

|OO.B =..o        |

|*.O +. o.        |

|.B +  =.         |

|o o .o oS        |

|... o E  .       |

|.  o .           |

| ..              |

| o=o             |

+----[SHA256]-----+

  然後再試看 ls -al ~/.ssh  
有出現就代表建立成功

total 16

drwx------   4 leeray  AP\Domain Users   136  6  7 12:19 .

drwxr-xr-x+ 37 leeray  AP\Domain Users  1258  6  7 12:19 ..

-rw-------   1 leeray  AP\Domain Users  1679  6  7 12:19 id_rsa

-rw-r--r--   1 leeray  AP\Domain Users   410  6  7 12:19 id_rsa.pub


(7) 接著請輸入 cat ~/.ssh/id_rsa.pub  取得SSH Keys 

我有改過,所以會長的比較奇怪一點

ssh-rsa sdfSDDffsdfsdfAAAAB3NzaC1yc2EAAAADAQABAAABAQDO1qOaUAnV+htsD4hMMLPbBas9rDAMcRDeAZimY5ITCCCCCCCCCCCCVvjSYav7qdSNXZ+8YNPrWvFef51mvt1tDN6yzTmq5ZSJ6dvYBBBBBBBBBBNoUS9fJ3pyDy45VAAAAAAAAAIGhWlcuDZNwjJ9mxBkvxZI54cKVtlLrylbkQPybs2VkIxPKyouHwxG9twCbMKciEBw5p4/w6FUmaWagQa6ZkbZm3u1qe8QDlxp “ABC@gmail.com”

  將KEY 直接全部貼上,最後一行有"雙引號的,其實就是Title, 會自動帶入

螢幕快照 2018-06-07 下午3.11.50.png

按下Add key 就完成 SSH Keys 的設定了

螢幕快照 2018-06-07 下午3.16.46.png


(8) 接著在 SourceTree 在本機端建立 Repositoary

先 Create Local Repository 

螢幕快照 2018-06-07 下午3.18.37.png

選擇你project 的位置

螢幕快照 2018-06-07 下午3.21.14.png

 

在Project 下,已經把語法幫你寫好了

Create a new repository
git clone git@gitlab.com:Ray000/ABC.git
cd ABC
touch README.md
git add README.md
git commit -m "add README"
git push -u origin master
Existing folder
cd existing_folder
git init
git remote add origin git@gitlab.com:Ray000/ABC.git
git add .
git commit -m "Initial commit"
git push -u origin master
Existing Git repository
cd existing_repo
git remote rename origin old-origin
git remote add origin git@gitlab.com:Ray000/ABC.git
git push -u origin --all
git push -u origin --tags

(9) 開啟終端機 ,先到 Project 下的目錄(或是看你要指定哪些到Gitlab都可以)

執行以上步驟 ,這是我的執行步驟給大家參考

螢幕快照 2018-06-07 下午3.27.24.png


(10) 接著回到 Sourcetree, 進入剛新增的目錄

螢幕快照 2018-06-07 下午3.28.43.png

如果要上傳有兩個步驟,第一步驟是先Commit 

然後匯到Push standby, 再次按下Push 就會上傳 Gitlab

螢幕快照 2018-06-07 下午3.24.49.png

我這邊做範例

我開啟我的Eclipse 隨便修改一行,再回去Sourcetree 就會馬上把異動過的Code 顯示出來 

螢幕快照 2018-06-07 下午3.30.09.png

我先將java Commit, 此時我的Push 會多一個 1 的 小icon

螢幕快照 2018-06-07 下午3.33.18.png

確認上傳

螢幕快照 2018-06-07 下午3.33.59.png

回到Gitlab 看看,會馬上看到剛剛commit 的程式碼 

螢幕快照 2018-06-07 下午3.35.26.png

以上就是GitLab + SourceTree 的簡單教學

如果設定過程有問題都可以問我

謝謝囉