Git是分布式版本控制系統(tǒng),同一個(gè)Git倉庫,可以分布到不同的機(jī)器上。怎么分布呢?最早,肯定只有一臺機(jī)器有一個(gè)原始版本庫,此后,別的機(jī)器可以“克隆”這個(gè)原始版本庫,而且每臺機(jī)器的版本庫其實(shí)都是一樣的,并沒有主次之分。
好在這個(gè)世界上有個(gè)叫GitHub的神奇的網(wǎng)站,從名字就可以看出,這個(gè)網(wǎng)站就是提供Git倉庫托管服務(wù)的,所以,只要注冊一個(gè)GitHub賬號,就可以免費(fèi)獲得Git遠(yuǎn)程倉庫。
在繼續(xù)閱讀后續(xù)內(nèi)容前,請自行注冊GitHub賬號。由于你的本地Git倉庫和GitHub倉庫之間的傳輸是通過SSH加密的,所以,需要一點(diǎn)設(shè)置:
- 第1步:創(chuàng)建SSH Key。在用戶主目錄下,看看有沒有.ssh目錄,如果有,再看看這個(gè)目錄下有沒有id_rsa和id_rsa.pub這兩個(gè)文件,如果已經(jīng)有了,可直接跳到下一步。如果沒有,打開Shell(Windows下打開Git Bash),創(chuàng)建SSH Key:
$ ssh-keygen -t rsa -C "youremail@example.com"```
然后一路回車,使用默認(rèn)值即可,由于這個(gè)Key也不是用于軍事目的,所以也無需設(shè)置密碼。
如果一切順利的話,可以在用戶主目錄里找到`.ssh`目錄,里面有`id_rsa`和`id_rsa.pub`兩個(gè)文件,這兩個(gè)就是SSH Key的秘鑰對,`id_rsa`是私鑰,不能泄露出去,`id_rsa.pub`是公鑰,可以放心地告訴任何人。
* 第2步:登陸GitHub,打開“Account settings”,“SSH Keys”頁面:
然后,點(diǎn)“Add SSH Key”,填上任意Title,在Key文本框里粘貼`id_rsa.pub`文件的內(nèi)容:

點(diǎn)“Add Key”,你就應(yīng)該看到已經(jīng)添加的Key:

為什么GitHub需要SSH Key呢?因?yàn)镚itHub需要識別出你推送的提交確實(shí)是你推送的,而不是別人冒充的,而Git支持SSH協(xié)議,所以,GitHub只要知道了你的公鑰,就可以確認(rèn)只有你自己才能推送。
當(dāng)然,GitHub允許你添加多個(gè)Key。假定你有若干電腦,你一會(huì)兒在公司提交,一會(huì)兒在家里提交,只要把每臺電腦的Key都添加到GitHub,就可以在每臺電腦上往GitHub推送了。
本文轉(zhuǎn)自:廖大神的官方網(wǎng)站
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001374385852170d9c7adf13c30429b9660d0eb689dd43a000