精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何在GitHub上協作開發開源項目?

譯文
開源 新聞
GitHub已經成為眾多大型開源項目的立足之地,允許來自全球的開發人員共同協作、做出貢獻。但我們要如何才能加入到項目中來并做出自己的貢獻?本文中,我們將共同討論開源項目合作過程中的通用規則,并介紹一些大家可能會涉及的知識及靈感。

【2013年8月29日 51CTO外電頭條】 也許很多朋友還不太了解,GitHub可以作為一種非常高效的項目開發協作機制。在任何擁有互聯網連接的區域,開發人員都可以隨時與全世界自由共享代碼成果(更不必提強大的工具支持、提交歷史源檢查以及便捷的查看方式)。GitHub已經成為眾多大型開源項目的立足之地,允許來自全球的開發人員共同協作、做出貢獻。

但我們要如何才能加入到項目中來并做出自己的貢獻?當然,相信大家已經了解如何利用Git來追蹤文件變更并將文件推送到服務器端。不過對于大型開源項目而言,GitHub還能帶來其它一些更為顯著的助力,這也使GitHub成為最為理想的項目溫床。在今天的文章中,我們將共同討論開源項目合作過程中的通用規則,并介紹一些大家可能會涉及的知識及靈感。

從小處入手

不要抗拒從小處入手

在著手進行開源項目協作之初,最重要的一點在于正確認識自己的角色定位。通常情況下,很多工作完全可以由我們自己獨立完成而不必勞煩專業技能出眾的編程人員。事實上,害怕自己不足以勝任合格程序員的念頭是影響大部分開發者邁入開源項目領域的最大障礙。不要抗拒從小處入手,先別急著解決什么重大錯誤或者重新編寫整個模塊。最好的起點就是嘗試尋找小型缺陷,例如說明文檔內容缺失或者進行跨設備的檢測及修復工作,甚至連修正簡單的語義錯誤及語法問題也是很有價值的貢獻。

這些較為初級的任務能夠成為大家初步邁入開源貢獻者門檻的良好開端,而且不必擔心碰到自己無法解決的重量級難題。大家可以注冊CodTriage將GitHub問題自動發送至您的個人郵箱。在查看收件箱時,只要感覺有信心搞定當前工作,就請放心大膽地發送接手請求。(我們將在本文稍后位置繼續討論其具體實施過程。)

了解項目的相關生態系統

對于任何協作內容,都可能存在一系列已經被全球開發者所廣泛認可的約定。其中可能包括一套詞匯集、貢獻方式以及提交信息的固定格式,甚至語法標準也已經擁有標準化規范,這就要求每一位貢獻者提前做好了解。在我們嘗試介入某個項目之前,請閱讀與工作相關的全部說明文檔。舉例來說,GitHub提供標準化CONTRIBUTING.md文件(大家可以點擊此處查看jQuery入門指南幫助自己熟悉這一流程)。這些指南文件將由維護代碼庫及主分支的開發人員進行維護。

另一種了解項目生態系統的方式在于查看現有代碼庫以及git日志。通讀開發者提交的信息并認真體會代碼風格能夠幫助大家進一步了解關于項目的方方面面。通過對項目說明文檔的閱讀,我們可以采用更為合作者所熟知的詞匯,從而保證自己的貢獻內容繼續保持同樣的敘述風格。

一旦我們已經成功融入項目的現有文化生態系統,接下來該如何貢獻代碼?

通過pull request工作流進行代碼貢獻

貢獻代碼的工作流程可能令人望而生畏。最重要的一點是要記住按照當前工作項目(正如我們前面所討論過的)的模式及標準處理工作。GitHub所支持的一般性工作流程其實沒那么困難。

1.將目標repo發送到自己的賬戶當中。

2.將repo克隆到自己的本地設備當中。

3.查看新的“主題分支”并做出變更。

4.將主題分支推送回自己的fork。

5.利用GitHub上的差異查看器創建一條pull request。

6.根據請求進行變更。

7.將pull request進行合并(通過在主分支當中),然后將主題分支從上游(目標)repo當中刪除。

在整個工作流程當中,根據給定項目的不同、其具體內容也會出現很多差異。舉例來說,主題分支的命名約定可能有所區別。某些項目使用諸如bug_345這樣的公約,其中345代表已經提交的GitHub問題ID號。某些項目更傾向于提交相對較短的消息。我們將通過以下一系列命令完成前面提到的工作流程。

第一步: 進行Fork

在GitHub.com上對repo進行fork。

第二步: 進行克隆

利用右側邊欄中的URL對repo進行克隆:

  1. git clone git@github.com:jcutrell/jquery.git 

第三步: 添加上游遠程倉庫

切換到克隆目錄,在這里大家可以添加上游遠程倉庫:

  1. cd jquery 
  2. git remote add upstream git@github.com:jquery/jquery.git 

以上命令現在允許大家將本地源中的變更提取出來并加以合并,如下所示:

  1. git fetch upstream 
  2. git merge upstream/master 

步驟四:檢查主題分支

不過在大家執行自己的變更前,請先對主題分支進行檢查:

git checkout -b enhancement_345

步驟五:提交

現在,大家可以執行變更并創建commit以追蹤具體變更內容。

  1. git commit -am "adding a smileyface to the documentation." 

步驟六:推送

接下來,大家將把主題分支推送到自己的項目fork當中。

  1. git push origin enhancment_345 ‘

第七步:創建pull request

最后,大家需要創建一條pull request。首先,查看repo中的fork,我們可能會看到一條"您最近推送的分支"。如果結果確實如此,則可以選擇"比較并pull request"。如果顯示其它結果,則可以在下拉菜單中選擇自己的分支,隨后單擊repo界面右上角的“pull request”或者“比較”按鈕。

通過“比較并pull request(Compare and Pull Request)”按鈕創建pull request

通過分支下拉菜單創建pull request

兩種方式都會將我們引導至同一個頁面,在這里大家可以創建pull request并在其中添加評論意見。該頁面還以直觀方式顯示出我們所做出的各項變更。這將幫助項目管理員更輕松地查看自己已經完成的工作,同時簡化決策過程、更快決定當前內容是否適合提交。如果變更存在問題,管理員可以在評論中提出質疑;管理員還可以要求我們清空pull request并重新提交,然后關閉pull request。

請注意,向項目管理員表達充分的尊重對于開源貢獻而言非常重要;畢竟我們總是能夠使用代碼的分支版本,如果管理員不打算pull我們的變更,這往往與他們的角色定位有關。請記住,根據GitHub員工Zach Holman在《GitHub如何利用GitHub來創建GitHub》一文中所說,pull request實際屬于對話的過程。最重要的是認同管理員的處理方式;相對于一味要求對方接受我們提交的內容,大家應當調整心態、只把提交過程視為與編寫代碼相關的對話通道。

GitHub Issue+Pull Request=項目管理最佳效果

GitHub提供GitHub Issue,這是一種非常有效的途徑,幫助我們為任何特定項目創建記錄化、交互化以及自動化的bug或者功能對話。不過Issue可以被禁用,而且其在默認狀態下即被禁用。Issue中內置有大量值得稱道的功能,但最重要的功能之一在于其與pull request的整合。用戶只需在提交消息中加入issue的數字ID,即可輕松在所提交信息中羅列該issue作為參考。例如:

  1. git commit -am "Adding a header; fixes #3" 

這條提交消息會在關聯pull request被接受后自動標記3號issue。這類自動化機制使得GitHub成為一款出色的項目開發管理工具。

尋求協作的輔助渠道

通常情況下,大型開源項目會從眾多不同類型的協同工作當中受益。

大家千萬別誤以為開源項目的貢獻途徑就只有通過pull request來實現。通常情況下,大型開源項目會從眾多不同類型的協同工作當中受益。舉例來說,像Ruby on Rails這樣的項目擁有知名度極高的技術社區,該社區會通過論壇及IRC聊天室回答問題,從而幫助開發人員建立起知識框架。這也有助于在討論框架的未來發展方向時迅速從中找到謬誤之處。

這些協作渠道通常作為前面所提到的支持環境開放,例如論壇與聊天室。當然,開發者之間也可以通過電子郵件體系或者電話會議來定義項目的發展方向,共同創建一套活潑而富有成效的項目社區。如果沒有這樣成熟健康的社區體系,pull request的效果將大打折扣。

重中之重在于態度

請記住,開源項目的根本動力來自人們分享知識、建立集體智慧并為之付出努力的態度。要想真正參與到項目中來并做出自己的貢獻,大家應該即使保持一種好奇的態度--“我能幫上什么忙嗎?”--而不應采取較為封閉的態度,例如“我只幫自己想幫的忙”。開源世界中的人們希望與真正樂于幫助他人的開發者一起工作。

總結陳詞

如果大家有興趣參與到開源項目中來,我要首先向您表示敬意!請記住,如果您以正確的態度嘗試接近此類項目、愿意從小處入手逐步積累經驗,那么我們的名字將同自己的代碼一道匯入全球貢獻者的成果當中,并最終服務于世界各地的每一位用戶。請拿出時間與耐心,認真了解與項目及參與者有關的一切知識。如果能在參與項目的同時找到自己的工作興奮點,結果將變得更美好。GitHub的力量以及整個開源世界仍然在一天天不斷壯大;馬上開始與其他開發者們攜手前進,您將順利成為這片新天地中的優秀成員!

原文鏈接:http://net.tutsplus.com/tutorials/tools-and-tips/how-to-collaborate-on-github/

責任編輯:黃丹 來源: 51CTO.com
相關推薦

2023-01-09 10:19:38

2014-04-15 10:11:05

Github開源

2017-02-27 11:06:28

Github開源項目

2021-05-26 09:35:22

Github開源項目

2018-11-28 09:20:42

GitHubJava開源項目

2021-01-05 10:27:02

GithubPython開源項目

2020-11-09 14:26:30

GitHub 技術開源

2019-02-26 10:15:13

GitHub 開源代碼

2012-06-27 10:16:12

開源項目CodePlex

2021-03-01 10:31:06

開源開源項目

2021-07-01 10:25:58

開源項目Github

2021-02-10 07:21:22

Github開源Java

2020-04-01 12:40:45

GitHub 開源Java

2019-08-07 15:39:35

GitHub代碼開發者

2020-05-06 07:30:01

開源項目Github開源

2021-08-15 22:50:33

Java開源項目Github

2020-02-06 11:23:22

GithubPython開源項目

2020-11-02 11:28:09

開源項目GitHubPython

2019-09-04 11:22:53

開源GitHub開源項目

2021-10-16 13:32:53

開源PythonGithub
點贊
收藏

51CTO技術棧公眾號

黄色动漫网站入口| 成人看片在线| 午夜精品一区二区三级视频| 国产精品日韩精品在线播放| 亚洲理论在线观看| 国产欧美亚洲日本| 综合久久中文字幕| 欧美精品首页| 亚洲欧美日本精品| 手机在线国产视频| 日本乱码一区二区三区不卡| 国产精品日产欧美久久久久| 成人看片视频| 亚洲乱码国产乱码精品| 91精品国产91久久久久久密臀 | 日本人妻丰满熟妇久久久久久| 亚洲欧美久久久| 精品国产一区二区三区四区在线观看 | 久久精品美女| 国产又粗又黄又爽的视频| 欧美一区久久| 最新的欧美黄色| 欧美精品欧美极品欧美激情| 欧美黄页在线免费观看| 午夜精品久久一牛影视| 午夜探花在线观看| 春暖花开成人亚洲区| 成人免费高清在线| 91九色国产视频| www五月天com| 亚洲人成久久| 欧美国产中文字幕| 午夜成人亚洲理伦片在线观看| 台湾色综合娱乐中文网| 精品日韩在线观看| 国产三级生活片| 91精品美女| 日韩人在线观看| 亚洲国产成人精品无码区99| 91在线中字| 成人免费在线视频| 午夜一区二区三视频在线观看| 香蕉视频成人在线| 成人一级视频在线观看| 91传媒视频免费| 国产精品久久免费| 麻豆免费精品视频| 国产免费久久av| 日韩xxx视频| 日韩黄色片在线观看| 热99久久精品| 国产精品久免费的黄网站| 最新亚洲一区| 久久久在线观看| 久久久久无码国产精品| 国产精品chinese| 欧美国产第二页| 免看一级a毛片一片成人不卡| 天天揉久久久久亚洲精品| 日韩在线视频网站| 日韩精品一区二区亚洲av性色 | 青青在线免费视频| 国产日产一区二区三区| 亚洲欧洲制服丝袜| xxxxxx在线观看| 激情影院在线| 午夜av一区二区三区| 国产成人无码a区在线观看视频| 77thz桃花论族在线观看| 亚洲6080在线| 黑森林福利视频导航| 天天综合网天天| 欧美日韩一区二区三区四区| 天天干天天色天天干| 国产麻豆精品| 精品国产乱码久久久久久图片| 国产免费a级片| 亚洲+变态+欧美+另类+精品| 亚洲欧美综合另类中字| 丁香六月激情综合| 欧美黄在线观看| 久久久综合av| 国产寡妇亲子伦一区二区三区四区| 视频一区视频二区在线观看| 国产精品永久免费视频| www.爱爱.com| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 99久久精品99国产精品| 欧美中日韩一区二区三区| 91九色在线porn| 亚洲综合色视频| 人妻内射一区二区在线视频 | 欧美家庭影院| 欧美日韩中文字幕| 最新天堂在线视频| 国产福利一区二区精品秒拍| 亚洲美女视频网| 91n在线视频| 一本久久知道综合久久| 国产精品爽爽爽爽爽爽在线观看| 精品国产亚洲一区二区麻豆| 91首页免费视频| 这里只有精品66| 欲香欲色天天天综合和网| 欧美日韩国产a| 日本少妇xxxx| 欧美高清在线| 欧美亚洲一级片| 国产一区二区小视频| 91丨九色丨尤物| 免费观看中文字幕| 快播电影网址老女人久久| 日韩欧美区一区二| 国产黄色大片免费看| 国模大胆一区二区三区| 国产美女搞久久| 日韩精品视频在线观看一区二区三区| 椎名由奈av一区二区三区| 国产亚洲综合视频| 日韩第一区第二区| 中文字幕欧美精品在线 | 欧美日韩精品一区二区三区 | 精品久久久久中文字幕小说| 国语自产精品视频在线看一大j8 | 视频精品一区二区三区| 亚洲一区第一页| 91蜜桃视频在线观看| 韩国欧美一区二区| 五月天亚洲综合情| 无遮挡在线观看| 亚洲第一级黄色片| 欧美黄色免费在线观看| 极品美女销魂一区二区三区| 欧洲一区二区在线观看| 亚洲啊v在线| 亚洲国产成人精品一区二区| 欧美性猛交xxxxx少妇| 久久精品国产一区二区三| 色播亚洲婷婷| 日韩色淫视频| 亚洲无限av看| 天堂网视频在线| 久久综合久久久久88| 男人用嘴添女人下身免费视频| 亚州一区二区| 欧美福利在线观看| 精品国产免费无码久久久| 国产精品高潮呻吟| 欧美午夜aaaaaa免费视频| 精品黄色一级片| 国产精品久久久久久久av电影| 国产免费a∨片在线观看不卡| 日韩欧美综合在线视频| 色婷婷av777| 日韩福利视频导航| 亚洲精品乱码视频| 欧美高清免费| 欧美另类xxx| 成人久久精品人妻一区二区三区| 一区二区三区视频在线看| 日本黄色一级网站| 国产在线成人| 精品无人区一区二区三区| 极品视频在线| 亚洲午夜久久久影院| 国产美女www爽爽爽| 中文欧美字幕免费| 香蕉视频xxxx| 亚洲区第一页| 日本不卡一区| 欧美美女被草| 欧美日本亚洲视频| 熟妇高潮一区二区三区| 色www精品视频在线观看| 四季av中文字幕| 精品一区二区免费视频| 日韩一级免费看| 奇米影视777在线欧美电影观看| 青青a在线精品免费观看| www在线免费观看| 日韩一区二区三区电影在线观看| 久久久久久天堂| 久久久午夜精品理论片中文字幕| 色国产在线视频| 欧美午夜a级限制福利片| 久久精品国产一区二区三区日韩| 日本.亚洲电影| 欧美日本国产在线| 欧美在线观看在线观看| 欧美久久久久免费| 亚洲视频免费播放| 中文成人av在线| 国产精品久久久久久亚洲色| 日韩av中文字幕一区二区三区 | 夜夜夜久久久| 无码免费一区二区三区免费播放 | 丝袜美腿诱惑一区二区三区| 日韩亚洲国产中文字幕| 熟妇人妻一区二区三区四区| 欧美色图免费看| 亚洲欧美在线观看视频| 国产精品萝li| 黄色性生活一级片| 激情图片小说一区| 91黄色小网站| 欧美精选一区| 亚洲一区在线免费| 午夜欧洲一区| 99国产超薄肉色丝袜交足的后果 | 欧美日韩一区二区三区在线看 | 菠萝菠萝蜜在线视频免费观看| 亚洲精品国产综合久久| 国产色综合视频| 91久久精品国产91性色tv| 国产亚洲精久久久久久无码77777| 国产拍揄自揄精品视频麻豆| 尤物网站在线观看| 韩国毛片一区二区三区| 日韩视频在线免费看| 亚洲国产电影| www.欧美黄色| 国产国产精品| 天天好比中文综合网| 亚洲深夜福利在线观看| 国产精品免费一区二区| 国产亚洲高清一区| 国产精品亚洲第一区| 裤袜国产欧美精品一区| 97精品视频在线| 久久99亚洲网美利坚合众国| 久久久999国产| 尤物网在线观看| 亚洲午夜女主播在线直播| 色在线免费视频| 亚洲精品国产精品国自产观看浪潮| 国产高清第一页| 欧美一区二区三区视频在线| 91成人一区二区三区| 欧美四级电影在线观看| 小泽玛利亚一区二区三区视频| 色综合久久88色综合天天6| 国产无人区码熟妇毛片多| 午夜久久久影院| 日韩成人免费在线视频| 亚洲国产成人av网| 国产精品9191| 午夜视频在线观看一区二区三区| 久久久久久久久久99| 一区二区三区加勒比av| 久久久久久久蜜桃| 亚洲一区在线视频观看| 久久久久久久极品内射| 亚洲成人免费视| 日本道在线观看| 日本韩国视频一区二区| 69视频免费看| 欧美日韩亚洲综合| 国产一区二区小视频| 欧美一级一级性生活免费录像| 999av视频| 欧美mv日韩mv| 污污网站免费在线观看| 精品一区二区电影| 国产黄在线看| 精品国偷自产在线| 日本中文字幕中出在线| 97久久久免费福利网址| 成人免费直播| 国产一区二区在线免费视频| 国产麻豆一区二区三区| 高清日韩一区| 免费黄色成人| 一级二级三级欧美| 欧美日韩一区二区高清| 国产素人在线观看| 视频一区欧美精品| 天天做天天干天天操| 丁香啪啪综合成人亚洲小说| 熟女少妇一区二区三区| 国产精品女主播av| 永久免费看黄网站| 丰满岳妇乱一区二区三区| 夜夜躁日日躁狠狠久久av| 欧美二区在线观看| 香蕉久久一区二区三区| 中文字幕欧美日韩在线| 欧美韩日亚洲| 国产精品精品一区二区三区午夜版| 激情综合婷婷| 久久久久久亚洲精品不卡4k岛国| 成人3d动漫在线观看| 精品视频在线观看一区二区| 久久久噜噜噜| 韩国三级hd中文字幕有哪些| 久久久久久久久久久黄色| tube国产麻豆| 在线亚洲人成电影网站色www| 国产男女无套免费网站| 亚洲免费av片| 性欧美ⅴideo另类hd| 国产精品久久久久久久久久久不卡 | 亚洲va韩国va欧美va精品| 最近日韩免费视频| 亚洲国产一区自拍| 顶级网黄在线播放| 日本一区二区在线播放| 亚洲精品v亚洲精品v日韩精品| 日本精品免费| 亚洲伦伦在线| 日本美女久久久| 欧美国产精品v| 九九热在线视频播放| 日韩一级片在线观看| a天堂在线资源| 欧美又大又粗又长| 伊人久久亚洲| 中文字幕色一区二区| 久久久久.com| 亚洲精品乱码久久| 亚洲欧美电影院| 亚洲一级特黄毛片| 亚洲人成网站免费播放| 僵尸再翻生在线观看免费国语| 91精品国产一区二区三区动漫 | 久久久久久亚洲综合影院红桃 | 亚洲高清成人| 在线观看一区二区三区视频| 国产精品免费aⅴ片在线观看| 久久久精品免费看| 亚洲成人网av| 福利小视频在线| 亚洲综合小说区| 我不卡影院28| 色一情一区二区三区| 欧美激情在线一区二区| youjizz在线视频| 日韩精品视频在线观看网址| 懂色av一区| 国产精成人品localhost| 欧美日韩视频一区二区三区| 国产精品中文久久久久久| 亚洲日本在线观看| 国产精品永久久久久久久久久| 中文字幕日韩欧美精品在线观看| 日韩和的一区二在线| 欧美视频1区| 日韩电影网1区2区| 一级黄色毛毛片| 欧美日韩黄视频| 黄色片网站在线观看| 亚洲a级在线播放观看| 一区二区三区在线观看免费| 日韩精品aaa| 亚洲精品伦理在线| 亚洲精品18在线观看| 久久久久久久久亚洲| 国产一区二区在线视频你懂的| 丁香婷婷综合激情| 不卡高清视频专区| 午夜毛片在线观看| 国产亚洲精品一区二555| 99re久久| 免费在线精品视频| 国产成人精品免费视频网站| 日产欧产va高清| 亚洲视频视频在线| 老司机精品视频网| 国产a级黄色大片| 成人av午夜影院| 久草视频一区二区| 中文字幕亚洲二区| 精品国产一级| 亚洲 自拍 另类小说综合图区| 久久综合成人精品亚洲另类欧美| 日韩国产成人在线| 久久影视免费观看| 国产亚洲成av人片在线观黄桃| 免费黄色日本网站| 中文字幕二三区不卡| 成人h动漫精品一区二区无码| 国内精品一区二区三区| 精品国产91久久久久久浪潮蜜月| 欧美成人乱码一二三四区免费| 亚洲精品视频在线看| 天天综合网在线| 国产精品香蕉国产| 亚洲高清毛片| 欧美亚洲色综久久精品国产| 日韩欧美三级在线| 台湾佬中文娱乐久久久| 欧洲金发美女大战黑人| 91免费国产在线| 国产美女精品视频国产| 777777777亚洲妇女| 国产精品久久久久无码av| 久久人人爽人人爽人人片| 91精品国产综合久久久蜜臀粉嫩 | 欧美亚洲一区二区在线| 啪啪免费视频一区| 午夜一区二区三视频在线观看|