Github已廢除https輸入帳密的方式,需改用SSH Key連線。
由於SourceTree內無法設定SSH Key,是直接讀取系統預設的,只能透過指令操作。
產生SSH Key
輸入以下指令產生金鑰,儲存位置預設/.ssh/id_rsa即可,且不設定密碼。
1 | ssh-keygen -t rsa -b 4096 -C "your_email" |
Github新增SSH Key
輸入以下指令查看公鑰內容,並複製輸出內容到剪貼簿。
1 | cat ~/.ssh/id_rsa.pub |
1 | type C:\Users\XXX\.ssh\id_rsa.pub |
或是使用PuTTYgen查看,選單「Conversions」>「Import key」
登入Github網頁版,到「Settings」>「SSH and GPG keys」>「New SSH key」,貼上剛複製的內容。
SourceTree設定
更換遠端伺服器倉庫網址,網址會從https改成git開頭。
1 | git remote set-url origin git@github.com:user_name/project.git |
輸入以下指令進行連線測試,第一次會詢問是否要繼續連線,輸入yes繼續。
1 | ssh -T git@github.com |
需做該步驟,若直接在SourceTree上點fetch同樣會跳出https輸入帳密的方式,但就算輸入也不會成功。
參考資料