1. 程式人生 > >git中ssh與https究竟有何不同

git中ssh與https究竟有何不同

區別

1.clone專案:使用ssh方式時,需要配置個人的ssh key,並將生成的ssh公鑰配置到git伺服器中。下面會談到如何生成並設定你的ssh key。而對於使用https方式來講,就沒有這些要求。

2.push:在使用ssh方式時,是不需要驗證使用者名稱和密碼,如果你在配置ssh key時設定了密碼,則需要驗證密碼。而對於使用https方式來講,每次push都需要驗證使用者名稱和密碼。

配置ssh key

1.檢查是否存在ssh key

$ ls ~/.ssh/id_rsa.pub

如果出現檔案路徑則存在

2.生成ssh key

$ ssh-keygen -t rsa -C
"[email protected]"

連續3個回車。如果不需要密碼的話。
最後得到了兩個檔案:id_rsa和id_rsa.pub。
如果你是第一次使用git,在此步驟前先設定自己的使用者名稱和郵箱

$ git config --global user.name "yourname"
$ git config --global user.email "[email protected]"

3.新增金鑰到github上
開啟你的id_rsa.pub檔案,拷貝內容貼上到github上的ssh設定裡就可以了。

4.測試

$ ssh -T git@github
.com

第一次的話期間會出現是否continue,輸入yes,出現hi加上你的使用者名稱就成功了。

然後你可以開啟專案.git資料夾下的config內容中修改成如下所示,即把url換成ssh方式的路徑就ok了,…是你的使用者名稱及專案名,不用自己輸入,到github上獲得你的ssh方式的路徑貼上過來就ok。

[remote "origin"]
    url = git@github.com:.........git
    fetch = +refs/heads/*:refs/remotes/origin/*