準(zhǔn)備
- 在GitHub注冊(cè)賬號(hào)
- 下載sourceTree客戶端
正文
1. 在GitHub創(chuàng)建倉(cāng)庫(kù)
2. 克隆倉(cāng)庫(kù)
克隆的方式有兩種
1. Use HTTPS
2. Use SSH
第一種比較方便直接復(fù)制粘貼就行
使用第二種需要添加ssh密鑰, 因?yàn)楸镜氐膅it倉(cāng)庫(kù)和Github服務(wù)器之間是通過(guò)ssh加密的
3. 使用sourceTree把倉(cāng)庫(kù)克隆到本地
3.1 克隆
3.2 提交
PS: 添加SSH keys
1. 生成SSH密鑰
1.1 終端中執(zhí)行如下命令剂公,進(jìn)入.ssh文件夾骇扇,查看是否已經(jīng)有了ssh密鑰; 如果沒(méi)有密鑰則不會(huì)有此文件夾泣矛,有則備份刪除:
cd ~/.ssh
2. 生成公鑰
ssh-keygen -t rsa
//這里是輸入文件名努酸,直接回車的話矗漾,則使用默認(rèn)名id_rsa锈候。
Enter file in which to save the key (/Users/rason/.ssh/id_rsa):
//這里是輸入密鑰密碼,直接回車的話敞贡,密碼為空泵琳。
Enter passphrase (empty for no passphrase):
//這里是再次輸入密鑰密碼,直接回車的話,密碼為空获列。該密碼就是使用該密鑰所需要輸入的密碼谷市。
Enter same passphrase again:
看到如下提示,說(shuō)明已經(jīng)生成成功击孩。
Your identification has been saved in /Users/rason/.ssh/id_rsa.
Your public key has been saved in /Users/rason/.ssh/id_rsa.pub.
The key fingerprint is:
………………
3. 查看并復(fù)制公鑰
cat id_rsa.pub
4. 添加公鑰
4.1 打開(kāi)GitHub的setting頁(yè)面
4.2 將剛剛復(fù)制的公鑰粘貼到key中
5. 測(cè)試是否連接成功
ssh -T git@github.com
有以下信息迫悠,說(shuō)明已經(jīng)成功。
PS: 上述申請(qǐng)的公鑰同樣可擁有開(kāi)源中國(guó)--碼云的ssh keys
在修改個(gè)人資料中選擇ssh公鑰
輸入命令查看上述申請(qǐng)的公鑰并復(fù)制粘貼到添加公鑰的輸入框中
cat ~/.ssh/id_rsa.pub
添加后巩梢,在終端(Terminal)中輸入
ssh -T git@git.oschina.net
若返回
Welcome to Git@OSC, yourname!
則證明添加成功创泄。
至此就可以Use SSH從GitHub和碼云clone項(xiàng)目了
SourceTree 一直提示輸入密碼問(wèn)題
一、系統(tǒng)更新問(wèn)題
項(xiàng)目是走ssh克隆下來(lái)的括蝠,之前也配置過(guò)密鑰鞠抑。按理來(lái)說(shuō)不應(yīng)該出現(xiàn)這樣的問(wèn)題,在日常開(kāi)發(fā)過(guò)程中突然需要我輸入密碼忌警?
在經(jīng)過(guò)多方面資料查找與解決方案嘗試后終于找到了原因搁拙,背后的黑手是系統(tǒng)升級(jí)了,在升級(jí)為macOS catlina后 ssh的代理就被自動(dòng)清除了法绵,所以重新添加一下就好了
步驟:
1感混、在控制臺(tái)輸入 【ssh-add -L】,控制臺(tái)會(huì)顯示如下:
$ ssh-add -L
The agent has no identities.
2礼烈、再執(zhí)行一次【ssh-add】弧满,然后輸入電腦密碼就好了,成功后會(huì)展示你本機(jī)的ssh密鑰此熬⊥ノ兀控制臺(tái)顯示如下:
Enter passphrase for /Users/macName/.ssh/id_rsa:輸入電腦密碼
Identity added: /Users/macName/.ssh/id_rsa (/Users/macName/.ssh/id_rsa)
3、最后再次執(zhí)行g(shù)it命令則無(wú)需輸入密碼了犀忱。
二募谎、SourceTree自身問(wèn)題
問(wèn)題: 不管輸入哪個(gè)密碼都是一直循環(huán)提示需要輸入密碼,并且也確認(rèn)在github上添加過(guò)ssh key阴汇。
解決辦法:
先在命令行g(shù)it clone一次之后数冬,再重新使用SourceTree進(jìn)行克隆就沒(méi)有問(wèn)題了,后面就可以隨意使用SourceTree進(jìn)行克隆其他項(xiàng)目搀庶。
不止github.com拐纱,code.aliyun.com也可能出現(xiàn)該問(wèn)題,同樣的解決辦法處理即可哥倔。
原因: git clone 一次之后會(huì)在.ssh/known_hosts中記錄ssh key秸架。