我打賭你肯定聽過GitHub,這是一家全球最大的同性交友網(wǎng)站。
GitHub的神奇之處在于防泵,它為你提供了一個(gè)倉庫,你可以把你在本地寫的代碼通過Git遠(yuǎn)程提交到它那里蝗敢。這樣在GitHub上面就有一個(gè)跟你的本地倉庫一模一樣的遠(yuǎn)程倉庫了捷泞。而且你今后對你的代碼做了任何修改,只要使用幾個(gè)非常簡單的命令就能將它推送到GitHub上寿谴。
聽起來似乎沒有什么吸引力锁右。但是你使用的很多開源的框架幾乎都是在GitHub上面的,越來越多的大公司開始使用GitGub提供的服務(wù)讶泰。
如果你也想像別人一樣酷咏瑟,有一個(gè)GitHub賬號必不可少。
那么現(xiàn)在就去GitHub的官網(wǎng)注冊一個(gè)賬號吧痪署。你應(yīng)該感恩戴德的是码泞,GitHub沒有被墻。
創(chuàng)建一個(gè)遠(yuǎn)程庫
注冊一個(gè)賬戶以后:
點(diǎn)擊【Settings】
在左側(cè)欄選擇【SSH keys】狼犯,點(diǎn)擊【New SSH keys】余寥。
你可能會(huì)奇怪了,這個(gè)SSH是什么悯森?
SSH是一個(gè)安全協(xié)議宋舷。Git支持SSH協(xié)議,這樣在使用Git進(jìn)行推送的時(shí)候會(huì)更安全瓢姻。你也不需要了解那么多肥缔,現(xiàn)在GitHub需要你提供一個(gè)SSH key,你給它就行了。在命令行輸入以下命令:
$ ssh-keygen -t rsa -C "xxx@xxx.xxx"
把里面的xxx@xxx.xxx部分換成你的郵件地址续膳,然后一路回車就行了改艇。
這樣你就得到了一個(gè)SSH鑰匙。這把鑰匙存放在你的用戶主目錄下坟岔,Windows系統(tǒng)存放在C:\Users\用戶名\.ssh目錄下谒兄。打開以后發(fā)現(xiàn)有幾個(gè)文件:
id_rsa是私鑰,不能給別人看社付,id_rsa.pub是公鑰承疲,可以給別人看。
你用文本編輯器(不要用Windows記事本)將id_rsa.pub打開鸥咖,復(fù)制里面的東西燕鸽。
回到GitHub上面來,在Title一欄中隨便填一個(gè)名字啼辣,然后將id_rsa.pub中的內(nèi)容粘貼到Key欄中:
點(diǎn)擊【Add SSH key】按鈕就完成了啊研。
接下來,我們在GitHub上創(chuàng)建一個(gè)倉庫鸥拧。
在【Repository name】一欄中隨便填寫一個(gè)名字作為倉庫名党远。然后直接點(diǎn)擊【Create repository】按鈕。
你會(huì)得到這樣一個(gè)界面:
因?yàn)槲覀兪褂玫氖荢SH協(xié)議富弦,而不是HTTPS協(xié)議沟娱,所以將默認(rèn)的HTTPS切換成SSH
記住你的那串長長的SSH地址,你的肯定跟我的不一樣腕柜。
我們現(xiàn)在要做的就是把我本地的Git倉庫跟我們在GitHub上新建的那個(gè)名叫first_repository的倉庫關(guān)聯(lián)起來(你本地的倉庫名可以和GitHub上的倉庫名不同)济似,這樣在GitHub就有一個(gè)跟我本地一模一樣的倉庫了。
那怎么關(guān)聯(lián)呢盏缤?
GitHub給了我們提示:
第一種情況砰蠢,你在本地還沒有建立一個(gè)倉庫,GitHub提示你要先git init蛾找,再git add ,再git commit赵誓,接著剩下的兩步才是關(guān)聯(lián)的關(guān)鍵:
$ git remote add origin git@github.com:qiaoer2017/first_repository.git
$ git push -u origin master
你在執(zhí)行上面的命令時(shí)打毛,可能會(huì)得到警告:“Are you sure you want to continue connecting (yes/no)?”,直接yes就行了俩功,SSH為了你的信息傳輸安全操碎了心幻枉,你直接告訴它不用擔(dān)心就可以了。
第二種情況诡蜓,如果你在本地已經(jīng)有了一個(gè)倉庫熬甫,只是想跟GitHub上的倉庫進(jìn)行關(guān)聯(lián),那么直接進(jìn)行最后的兩步就行了蔓罚。
推送成功了椿肩!現(xiàn)在你在GitHub上有一個(gè)跟你本地的倉一模一樣的倉庫了瞻颂。
現(xiàn)在開始,如果你要在本地提交郑象,只需要:
$ git push origin master
就可以了贡这,不需要 -u 參數(shù),也不需要git remote了厂榛,因?yàn)閮蓚€(gè)倉庫已經(jīng)關(guān)聯(lián)過了盖矫,兩個(gè)人就相當(dāng)于認(rèn)識(shí)了,不需要再關(guān)聯(lián)了击奶。
從遠(yuǎn)程庫克隆
你可能在GitHub上看到一個(gè)好的項(xiàng)目辈双,想拷到本地,你可以直接下載柜砾,GitHub對每個(gè)倉庫都提供了下載湃望,【Download ZIP】。下載下來就是一個(gè)普通的壓縮包局义。
但有時(shí)候你不想這樣喜爷,你想直接根據(jù)GitHub上別人的倉庫那里克隆一份跟它一模一樣的倉庫到本地。GitHub允許你這么做萄唇。GitHub上幾乎所有的倉庫都是開放的檩帐,除非別人申請了私密賬號(當(dāng)然這是要錢的),大多數(shù)的倉庫都是公開的另萤,你隨時(shí)可以把別人寫的代碼克隆一份到你的電腦上進(jìn)行研究湃密。
所以克隆就是,從GitHub上(或者你們公司自己搭建的一個(gè)24小時(shí)運(yùn)行的安裝了Git的服務(wù)器)把別人的倉庫完完全全的復(fù)制一份到你的電腦上四敞,你的電腦上就會(huì)有一個(gè)跟GitHub上一模一樣的倉庫了泛源,而不只是一個(gè)ZIP格式的壓縮包。
那怎么克隆呢忿危?
很簡單达箍,直接一個(gè)命令:git clone
例如,你自己先在GitHub建立一個(gè)空的倉庫铺厨,取名叫second_repository(或者你看到別人好的項(xiàng)目)缎玫,記錄下SSH地址(別人的倉庫可能用的是HTTPS加密方式),比如:git@github.com:qiaoer2017/second_repository.git
然后:
$ git clone git@github.com:qiaoer2017/second_repository.git
就OK啦解滓!這樣你就會(huì)發(fā)現(xiàn)自己的電腦上有一份跟GitHub上一模一樣的倉庫了赃磨,目錄的名字就叫做second_repository,而且你打開這個(gè)目錄會(huì)發(fā)現(xiàn)里面也有.git隱藏目錄洼裤,這說明second_repository是一個(gè)Git工作目錄邻辉,你不需要再用git init進(jìn)行初始化了。
好了,GitHub基本的功能你都已經(jīng)掌握了值骇。但是最為一家全球最大的同性交友網(wǎng)站莹菱,肯定還有一些其他的功能,比如點(diǎn)個(gè)贊啦雷客,評論啦……
如果喜歡的話芒珠,可以關(guān)注我的微博http://weibo.com/qiaoer2017