怎樣使用GitHub,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
成都創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站制作、網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的贛州網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
GitHub是一個(gè)Git的遠(yuǎn)程代碼托管平臺(tái),它除了提供代碼托管外,還提供了如問題發(fā)布、pull request、報(bào)表統(tǒng)計(jì)等功能,下圖為EFCore項(xiàng)目的貢獻(xiàn)者統(tǒng)計(jì)信息:
GitHub提供了一整套遠(yuǎn)程協(xié)作的解決方案,所以是開源項(xiàng)目的首選平臺(tái),許多知名項(xiàng)目都托管在GitHub上。
GitHub可以免費(fèi)的創(chuàng)建自己的開源代碼倉庫,同時(shí)有付費(fèi)服務(wù),如私有倉庫、GitHub的企業(yè)解決方案等。
GitHub中提供了個(gè)人倉庫和組織倉庫,分別適合個(gè)人開源項(xiàng)目以及組織開源項(xiàng)目。
個(gè)人倉庫主頁:
組織倉庫首頁:
創(chuàng)建組織:
填寫組織信息:
1.創(chuàng)建一個(gè)倉庫(個(gè)人和團(tuán)隊(duì)倉庫創(chuàng)建類似,下圖是團(tuán)隊(duì)倉庫)
2. 倉庫的維護(hù):
針對(duì)每一個(gè)倉庫,GitHub提供了代碼管理(Code)、問題管理(Issues)、拉請(qǐng)求(Pull Request)、項(xiàng)目管理(Projects)、百科(Wiki)、統(tǒng)計(jì)(Insights)、倉庫設(shè)置(Settings)功能,通過這些功能可以對(duì)代碼倉庫進(jìn)行維護(hù):
Fork和Pull request是GitHub上完成代碼共享的核心功能,下面就介紹如何使用Fork和Pull Request完成代碼貢獻(xiàn):
1. 將貢獻(xiàn)目標(biāo)倉庫Fork到自己的倉庫中:
2. 獲取Fork后的倉庫,獲取并對(duì)代碼進(jìn)行修改最后推送到遠(yuǎn)程分支(直接使用master分支):
修改代碼后將修改的內(nèi)容推到遠(yuǎn)程倉庫:
注:更多使用Git的內(nèi)容參考:《好代碼是管出來的——使用Git來管理源代碼》以及《好代碼是管出來的——Git的分支工作流與Pull Request》。
3. 發(fā)起Pull Request:
創(chuàng)建新的pull request將會(huì)顯示以下信息(代碼由SelimTeam倉庫合并到y(tǒng)qszt的倉庫、代碼是可合并的以及代碼差異信息):
當(dāng)點(diǎn)擊“Create Pull Request”按鈕后,該請(qǐng)求將會(huì)被創(chuàng)建。
4. 處理Pull Request:
yqszt/MyBlog庫擁有者,可以在pull request選項(xiàng)卡中看到相應(yīng)的信息并進(jìn)行合并:
文件差異:
合并Pull Request:
合并結(jié)果:
小編介紹了如何使用GitHub來個(gè)人/團(tuán)隊(duì)代碼倉庫,對(duì)于一個(gè)GitHub倉庫來說除了提供基礎(chǔ)的代碼版本管理功能以外還提供了問題管理、項(xiàng)目管理、百科、拉請(qǐng)求、數(shù)據(jù)統(tǒng)計(jì)等功能,倉庫的擁有者(開發(fā)者)可以使用GitHub進(jìn)行項(xiàng)目管理、代碼管理,還可以將相關(guān)知識(shí)通過百科進(jìn)行發(fā)布,以便于項(xiàng)目的受益者、貢獻(xiàn)者能夠快速獲得項(xiàng)目信息,而貢獻(xiàn)者除了可以通過Wiki獲取信息外,還可以Issue、Pull Request對(duì)項(xiàng)目提出疑問或進(jìn)行貢獻(xiàn),擁有者和貢獻(xiàn)者所有的溝通都可以通過Github來完成。
另外Github的fork與pull request實(shí)際上就是上一篇文章中提到的“集成管理者工作流”的實(shí)現(xiàn),其中在對(duì)pull request的代碼進(jìn)行合并時(shí),實(shí)際上還強(qiáng)制進(jìn)行了代碼審查,這種工作流模式即適合本地的開發(fā)團(tuán)隊(duì),也適合開發(fā)人員來自世界各地的開源項(xiàng)目。
從這些方面看來Github不再是一個(gè)簡(jiǎn)單的Git遠(yuǎn)程倉庫托管平臺(tái),而是一個(gè)分布式的軟件開發(fā)管理解決方案。
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。