Mac 綁定Gitlab或者GitHub賬號,重新生成公鑰

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

2.建立 SSH密鑰,並將密鑰中的公鑰添加到GitLab,以便咱們經過SSH協議來訪問Git倉庫。git

SSH 密鑰的建立須要在終端(命令行)環境下進行,咱們首先進入命令行環境。一般在OS X和Linux平臺下咱們使用終端工具(Terminal),在Windows平臺中,可使用Git Bash工具,git客戶端安裝目錄下git-bash.exe文件小程序

  A:進入SSH目錄:cd ~/.ssh

  (1)若是尚未 ~/.ssh 目錄,能夠手工建立一個(mkdir ~/.ssh),以後再經過cd ~/.ssh進入SSH目錄windows

  (2)能夠經過ls -l命令查看SSH目錄下的文件,來確認你是否已經生成過SSH密鑰;若是SSH目錄爲空,咱們開始第二步B,生成 SSH 密鑰;若是存在id_rsa.pub這個文件,說明你以前生成過SSH密鑰,如何添加多個sshkey也不難,通常不多用,這裏不介紹了微信小程序

  B:生成SSH密鑰

  咱們經過下面的命令生成密鑰,請將命令中的YOUR_EMAIL@YOUREMAIL.COM替換爲你註冊gitlab時用的Email地址安全

  ssh-keygen -t rsa -C "YOUR_EMAIL@YOUREMAIL.COM"bash

  在SSH生成過程當中會出現如下信息,按屏幕的提示操做便可:服務器

  

Note:Enter passphrase (empty for no passphrase) :時,能夠直接按兩次回車鍵輸入一個空的 passphrase;也能夠選擇輸入一個 passphrase 口令,若是此時你輸入了一個passphrase,請牢記,以後每次提交時都須要輸入這個口令來確認。微信

實踐過程當中建議不要密碼。ssh

3.獲取SSH公鑰信息:

SSH密鑰生成結束後,根據提示信息找到SSH目錄,會看到私鑰id_rsa和公鑰id_rsa.pub這兩個文件,不要把私鑰文件id_rsa的信息透露給任何人。咱們能夠經過cat命令或文本編輯器來查看id_rsa.pub公鑰信息。

(1)經過編輯器。使用你熟悉的文本編輯器,好比 記事本、Sublime Text等軟件打開id_rsa.pub,複製裏面的全部內容以備下一步使用。

(2)經過cat命令。在命令行中敲入cat id_rsa.pub,回車執行後命令行界面中會顯示id_rsa.pub文件裏的內容,複製後在下一步使用。

(3)經過直接使用命令將id_rsa.pub文件裏的內容複製到剪切板中

4.添加SSH公鑰到gitlab:

  1.打開gitlab的Profile配置頁面,選擇SSH Keys.

    2.添加SSH公鑰。填寫Title和Key,其中Title是Key的描述信息,Key是上面複製的SSH公鑰的內容,直接粘貼到輸入框中保存便可。

5.導入項目:

1.設置下git的用戶名和郵箱

在提交代碼前,還須要設置下git的用戶名和郵箱(最好用英文,不要出現中文),這樣提交記錄纔會在gitlab上顯示帶有你名字的記錄。

在命令行窗口輸入(windows須要安裝打開 Git Bash工具才行):
git config --global user.name "your_name"
git config --global user.email "your_email"

2.導新項目到gitlab上

若是項目存在,須要導入到gitlab,能夠經過命令行直接將項目導入上去。

cd "本地存在項目的路徑"  
git init  
git remote add origin git@gitlab.com:USERNAME/PROJECTNAME.git  
git add .  
git commit -m 'first git demo'  
git push -u origin master  

3.導入項目到本地

git clone"你的項目地址"

4. 代碼回滾

若是咱們提交了(git commit)代碼,而且已經推送(git push)到了遠程分支,忽然發現版本不對,咱們想要撤回來,該怎麼作?

三種方式:

a. git revert commit號;經過git revert來進行覆蓋,也就是找到須要撤回的版本對應的版本號,經過git revert 加上提交的ID來進行線上覆蓋。

b. git reset --soft commit號 ;經過git reset --soft進行重置,這個方式也是我我的比較喜歡的方式,當你提交了4個文件到master之後,想要撤回來,這種方式會把提交的代碼所有保留再本地,同時你執行git status,你會發現這些代碼都變成了等待提交的狀態,當你修改完之後,在經過git push origin master --force,切記必定要經過--force來強推,由於git reset 不會撤回線上的代碼,只是撤回你本地倉庫的代碼,那麼你要提交就會衝突,必須強推才能提交上去。

c. git reset --hard commit號;這種方式慎用,這種方式和--soft相似,可是惟一的區別就是執行之後,本地倉庫代碼都會自動刪除,當你不想要此次提交的代碼的時候能夠採用這種方式,最後也是經過git push origin master --force來強推。

 

近期剛上線一門基於微信小程序、公衆號和小程序雲開發的微信受權、分享和支付的專項課程,若是你對支付感興趣能夠考慮入手:

https://coding.imooc.com/class/343.html

React全家桶開發通用的後臺管理系統:

https://coding.imooc.com/class/236.html

Vue2.0+Vue-Router+Vuex+Node+Mongo開發全棧商城課程

https://coding.imooc.com/class/113.html

慕課講師:河畔一角

講師地址:http://www.imooc.com/u/1343480

相關文章
相關標籤/搜索