SSH & HTTPS
兩種不同與Git平台數據庫連接方式比較
:::info
SSH key 彈性高,必須要是專案管理員才能拉檔案
HTTPS 有網址的皆可以clone下來,需要輸入帳號密碼
:::
SSH
產出一對公鑰及私鑰,私鑰存在本地端,公鑰則上傳到Github或Gitlab些版本控制平台上供辨識,push不需要輸入帳號密碼
使用
檢查電腦是不是已經有ssh key了,如果有了請跳過步驟二
cd ~/.ssh
ls
取得公鑰cat id_rsa.pub
建立新的SSH key
ssh-keygen -t rsa -C "你的email地址"
將SSH key 放到平台上,視不同平台加入
舉Gitlab為例子
HTTPS
取得網址就可以clone,每次push時需要輸入帳號密碼(可以利用keychain去儲存帳號資料就可以不用每次都輸入),現在改成需要Personal Access Token 來做推送
先用Github來做範例
取得clone URL
建立Personal Access Token
push
加入遠端數據庫
1
git remote add origin https://[token]@github.com/[username]/[repository]
設定遠端設定
1
git remote set-url origin https://[token]@github.com/[username]/[repository]
轉換HTTPS->SSH
- 檢查目前遠端分支
git remote -v
- 重新設定對應遠端分支
git remote set-url git@github:userName/repository.git
- 檢查目前遠端分支有沒有改成功,再執行一次
git remote -v
- push