解決git倉庫從http轉為ssh所要處理的問題


 

引言

 為了方便,一般我們克隆倉庫的時候會選擇http或者https協議

git clone https://github.com/Name/project

然后,每次git pull 的時候都要求輸入密碼,為了方便推拉代碼,更好的做法就是使用ssh

 

解決辦法

 1.確定你的git已設置用戶名和郵箱

git config --global user.name "YourName"
git config --global user.email "email@mail.com"

 

2.查看你的home目錄下是否已經生成過ssh-key

ll ~/.ssh

如果目錄不存在或者沒有看到id_rsa和id_rsa.pub這兩個文件(注:id_rsa為默認創建名字)

新建一個ssh-key

ssh-keygen -t rsa -C "email@mail.com"

注:請確保email地址相同

 

3.向你的遠程git倉庫加入你的公鑰(注:gitea、gitlab、github一般在用戶的設置頁面添加,如果遠程是通過git init初始化的項目,請追加到遠程機器的~/.ssh/authorized_keys 文件中)

cat .~/ssh/id_rsa.pub

 

4.轉換本地連接遠程git的地址(注:這也是git clone http://xxx.com和git clone git@xxx.com的區別,使用本方法節省刪除文件以及從新克隆的時間)

在你git clone項目后,只需將.git/config文件中

url = http://xxx.com/Name/project.git

改為

url = git@xxx.com/Name/project.git

即可。

 

5.測試你的ssh-key

ssh -T git@xxx.com

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM