日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪(fǎng)問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

好代码是管出来的——使用GitHub

發(fā)布時(shí)間:2023/12/4 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 好代码是管出来的——使用GitHub 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

前面的文章介紹了Git的基本概念和用法,本文則是基于GitHub的一個(gè)實(shí)踐介紹,主要內(nèi)容有:

  • GitHub簡(jiǎn)介

  • 個(gè)人與組織

  • 倉(cāng)庫(kù)的創(chuàng)建與維護(hù)

  • Fork與pull request

  • 小結(jié)

GitHub簡(jiǎn)介

  GitHub是一個(gè)Git的遠(yuǎn)程代碼托管平臺(tái),它除了提供代碼托管外,還提供了如問(wèn)題發(fā)布、pull request、報(bào)表統(tǒng)計(jì)等功能,下圖為EFCore項(xiàng)目的貢獻(xiàn)者統(tǒng)計(jì)信息:

  

  GitHub提供了一整套遠(yuǎn)程協(xié)作的解決方案,所以是開(kāi)源項(xiàng)目的首選平臺(tái),許多知名項(xiàng)目都托管在GitHub上。
  GitHub可以免費(fèi)的創(chuàng)建自己的開(kāi)源代碼倉(cāng)庫(kù),同時(shí)有付費(fèi)服務(wù),如私有倉(cāng)庫(kù)、GitHub的企業(yè)解決方案等。


個(gè)人與組織

  GitHub中提供了個(gè)人倉(cāng)庫(kù)和組織倉(cāng)庫(kù),分別適合個(gè)人開(kāi)源項(xiàng)目以及組織開(kāi)源項(xiàng)目。
  個(gè)人倉(cāng)庫(kù)主頁(yè):

  

  組織倉(cāng)庫(kù)首頁(yè):

  

  創(chuàng)建組織:

    

  填寫(xiě)組織信息:  

  

倉(cāng)庫(kù)的創(chuàng)建與維護(hù)

  1.創(chuàng)建一個(gè)倉(cāng)庫(kù)(個(gè)人和團(tuán)隊(duì)倉(cāng)庫(kù)創(chuàng)建類(lèi)似,下圖是團(tuán)隊(duì)倉(cāng)庫(kù))

  

  2. 倉(cāng)庫(kù)的維護(hù):
  針對(duì)每一個(gè)倉(cāng)庫(kù),GitHub提供了代碼管理(Code)、問(wèn)題管理(Issues)、拉請(qǐng)求(Pull Request)、項(xiàng)目管理(Projects)、百科(Wiki)、統(tǒng)計(jì)(Insights)、倉(cāng)庫(kù)設(shè)置(Settings)功能,通過(guò)這些功能可以對(duì)代碼倉(cāng)庫(kù)進(jìn)行維護(hù):

  

Fork與Pull request

  Fork和Pull request是GitHub上完成代碼共享的核心功能,下面就介紹如何使用Fork和Pull Request完成代碼貢獻(xiàn):
  1. 將貢獻(xiàn)目標(biāo)倉(cāng)庫(kù)Fork到自己的倉(cāng)庫(kù)中:

  

  

  2. 獲取Fork后的倉(cāng)庫(kù),獲取并對(duì)代碼進(jìn)行修改最后推送到遠(yuǎn)程分支(直接使用master分支):

  

  

修改代碼后將修改的內(nèi)容推到遠(yuǎn)程倉(cāng)庫(kù):

  

  注:更多使用Git的內(nèi)容參考:《好代碼是管出來(lái)的——使用Git來(lái)管理源代碼》以及《好代碼是管出來(lái)的——Git的分支工作流與Pull Request》。

  3. 發(fā)起Pull Request:

  

  創(chuàng)建新的pull request將會(huì)顯示以下信息(代碼由SelimTeam倉(cāng)庫(kù)合并到y(tǒng)qszt的倉(cāng)庫(kù)、代碼是可合并的以及代碼差異信息):

  

   當(dāng)點(diǎn)擊“Create Pull Request”按鈕后,該請(qǐng)求將會(huì)被創(chuàng)建。

   4. 處理Pull Request:
   yqszt/MyBlog庫(kù)擁有者,可以在pull request選項(xiàng)卡中看到相應(yīng)的信息并進(jìn)行合并:

  

  文件差異:

  

  合并Pull Request:

  

  合并結(jié)果:

  

    

小結(jié) 

  本文介紹了如何使用GitHub來(lái)個(gè)人/團(tuán)隊(duì)代碼倉(cāng)庫(kù),對(duì)于一個(gè)GitHub倉(cāng)庫(kù)來(lái)說(shuō)除了提供基礎(chǔ)的代碼版本管理功能以外還提供了問(wèn)題管理、項(xiàng)目管理、百科、拉請(qǐng)求、數(shù)據(jù)統(tǒng)計(jì)等功能,倉(cāng)庫(kù)的擁有者(開(kāi)發(fā)者)可以使用GitHub進(jìn)行項(xiàng)目管理、代碼管理,還可以將相關(guān)知識(shí)通過(guò)百科進(jìn)行發(fā)布,以便于項(xiàng)目的受益者、貢獻(xiàn)者能夠快速獲得項(xiàng)目信息,而貢獻(xiàn)者除了可以通過(guò)Wiki獲取信息外,還可以Issue、Pull Request對(duì)項(xiàng)目提出疑問(wèn)或進(jìn)行貢獻(xiàn),擁有者和貢獻(xiàn)者所有的溝通都可以通過(guò)Github來(lái)完成。
  另外Github的fork與pull request實(shí)際上就是上一篇文章中提到的“集成管理者工作流”的實(shí)現(xiàn),其中在對(duì)pull request的代碼進(jìn)行合并時(shí),實(shí)際上還強(qiáng)制進(jìn)行了代碼審查,這種工作流模式即適合本地的開(kāi)發(fā)團(tuán)隊(duì),也適合開(kāi)發(fā)人員來(lái)自世界各地的開(kāi)源項(xiàng)目。
  從這些方面看來(lái)Github不再是一個(gè)簡(jiǎn)單的Git遠(yuǎn)程倉(cāng)庫(kù)托管平臺(tái),而是一個(gè)分布式的軟件開(kāi)發(fā)管理解決方案

  PS:Github被微軟收購(gòu),今后Github又會(huì)與.Net生態(tài)圈擦出什么樣的火花?拭目以待。

相關(guān)文章:

  • 好代碼是管出來(lái)的——使用Git來(lái)管理源代碼

  • 好代碼是管出來(lái)的——Git的分支工作流與Pull Request

原文地址https://www.cnblogs.com/selimsong/p/9135514.html?

.NET社區(qū)新聞,深度好文,歡迎訪(fǎng)問(wèn)公眾號(hào)文章匯總 http://www.csharpkit.com

總結(jié)

以上是生活随笔為你收集整理的好代码是管出来的——使用GitHub的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。