首頁 > tools > VCS > git > > 正文

github與gitlab使用的一些經驗

發布人:[email protected]    點擊:

堅守道心 鐘離權十考呂洞賓

雖然最早接觸的是github,但是這幾年一直使用gitlab辦公。

其實二者使用大同小異——工作gitlab,對外show github

創建項目

 Visibility Level 項目可見級別

Internal:The project can be accessed by any logged in user. 團隊項目選擇這個

Public:The project can be accessed without any authentication. 組件庫等,選擇這個


gitlab創建項目

github創建項目

github創建項目.jpeg

gitlab 管理項目成員

gitlab 管理成員

添加和配置SSH公鑰

當然,你說如用戶名密碼也可以——不定期再輸入一遍。

使用ssh方式時,是不需要驗證用戶名和密碼,如果你在配置ssh key時設置了密碼,則僅需要驗證配對密碼。而對于使用https方式來講,每次push都需要驗證用戶名和密碼。


SSH(Secure Shell)是一種安全協議,在你的電腦與GitLab服務器進行通信時,我們使用SSH密鑰(SSH Keys)認證的方式來保證通信安全。

比如mac遠程登錄linux   ssh [email protected] -p port

配置步驟如下:

  1. ls -al ~/.ssh,檢查是否顯示有id_rsa.pub或者id_dsa.pub存在,如果存在請直接跳至第3步。

  2. 在bash中輸入ssh-keygen -t rsa -C ”[email protected]”,注意這個地方的郵箱地址地址替換成你自己的郵箱地址即可,在顯示如下的輸出后一直按回車即可

  3. 打開id_rsa.pub文件,并且復制全部內容

  4. 打開GitLab賬戶,打開 頭像->setting -> SSH Keys,將剛剛復制的內容添加到Key的文本域中,然后點擊Add key。

然后就可以開始把本地目錄上傳到github了

git init

git add .

git commit -m "first commit"

git remote add origin [email protected]:username/yourProject.git

git push -u origin master


GPG和SSH的區別

GPG 密鑰是相對長期的,一對密鑰生成以后會用幾年甚至更久。

SSH 密鑰是相對短期的,會經常換新。

GPG 密鑰是綁定到人的,而 SSH 是綁定到服務器的(可以一個服務器用一對密鑰,或者一個網站用一對密鑰)。

所以對于 GitHub 來說,提供 SSH 密鑰比較實際些。而 GPG 密鑰由于已經有各大服務器提供了,所以再提供一個意義不是很大。

gpg 信任模型里,人和 keyid 的對應關系要求“親眼核實”才算數的。 github 又沒見過你,就憑你上傳一個 publickey 就說這個 key 是你?那你如果上傳的是別人的 publickey 呢?

github 能保證的只有:這個 commit 上的簽名,和你上傳的 publickey 能夠對應的時候,給你顯示個已核實該簽名

參看:https://www.v2ex.com/t/274133



20180726212923214.png