在進行Git密鑰配置時,老是提示:html
「The form contains the following errors:
Key is invalid
Fingerprint cannot be generated」git
以下圖:github
查找了很多資料,大部分說粘貼的字符與實際生成的不一致,例如windows環境下,若是有換行習慣帶"\r\n",去除便可。幾回嘗試都不能夠。windows
最後發現是粘貼的內容有問題,只黏貼了密鑰,沒有前貼前面的「ssh-rsa」 和後面的郵箱。ssh
謹記:要粘貼pub密鑰裏面的全部內容(同時注意粘貼不要帶換行符)。gitlab
附如下內容的參考連接:http://www.cnblogs.com/xiuxingzhe/p/9303278.html學習
安裝Git:詳見http://www.cnblogs.com/xiuxingzhe/p/9300905.html測試
開通gitlab(開通須要諮詢所在公司的gitlab管理員)帳號後,本地Git倉庫和gitlab倉庫仍然不能傳輸項目,緣由是要經過SSH加密才能傳輸,因此須要讓gitlab認證本地的SSH Key加密
認證以前,則先使用Git生成SSH Keyurl
1 Git生成祕鑰
1.1 確認本地祕鑰
SSH 祕鑰默認儲存在帳戶的主目錄下的 ~/.ssh 目錄
如:C:\Users\BF100400\.ssh\
查看是否包含id_rsa和id_rsa.pub(或者是id_dsa和id_dsa.pub之類成對的文件),有.pub 後綴的文件就是公鑰,另外一個文件則是密鑰。
若是有這兩個文件,則跳過1.2;若是沒有這兩個文件,甚至.ssh目錄也沒有,則須要用ssh-keygen 來建立
1.2 生成祕鑰信息
- 在.ssh 目錄下右鍵打開Git Bash(.ssh目錄不存在,手動建立)
- 生成祕鑰:ssh-keygen -t rsa -C "your_email@youremail.com" ,直接Enter就行,而後會提示輸入密碼(可輸可不輸)
說明:命令中的email,就是gitlab中的帳號,須要保持一致
- 執行完成以後,在.ssh 目錄下就會生成祕鑰文件
2 gitlab祕鑰添加
筆者當前所在公司使用的gitlab做爲代碼管理倉庫平臺,因此下面是gitlab爲例說明如何進行祕鑰添加,若是我的研究或學習使用的是github,方法同下
2.1登陸gitlab
使用申請的gitlab帳號登陸
確保登陸成功
2.2 添加祕鑰
- 在搜索框中搜索:SSH Keys
- 點擊 Add SSH Keys
- 拷貝公鑰文件(即1.2中生成的id_rsa.pub)中的信息到key輸入框中,title能夠隨便起,見名知意便可。而後點擊Add Keys
至此,git及gitlab相關配置已經所有完成,接下來可使用git從gitlab上克隆代碼來測試相關安裝和配置的正確性
3 Git示例
注意:克隆代碼以前確保有相關的項目代碼權限(master、developer、reporter),如無權限,請求項目具備master權限的同事幫忙分配權限
- 這裏以verify-center項目爲例(有相關權限的項目,登陸gitlab後,首頁右側會所有以列表形式展現),點擊verify-center獲取SSH 連接地址
- 在本地目標下載目錄下,右鍵-->Git Bash Here
- 輸入命令:git clone git@gitlab.baofoo.net:clearing/verify-center.git
- 首次拉取代碼時,須要確認祕鑰信息,輸入yes便可
- 確認項目已從gitlab上克隆到本地
項目拉取完成,能夠打開使用了