前言:
本文旨在記錄Git的pull request實戰(zhàn)以及相關(guān)的技術(shù)好文的傳送門(≧?≦)
本文假定你已經(jīng)有g(shù)ithub賬號诞挨,本地已經(jīng)安裝git减途。如果沒有丹禀,請下拉至分割線( 30分鐘入門github的傳送門!(⊙o⊙)谴仙!)陵刹。
看過一篇文章默伍,如果不擅長講故事,那就從what 、why 也糊、how三大法則講起(^-^)V (什么炼蹦!你有更好的講故事套路?! 請教我(づ ̄3 ̄)づ)
what & why
Pull request是開發(fā)者使用Github進行協(xié)作的利器。
Pull Request是協(xié)作者修改代碼后或在原基礎(chǔ)上增加新代碼后向倉庫發(fā)送采納的請求功能 ; 同時pull request還是一個專注于某個提議功能的討論版,協(xié)作者可以根據(jù)code reviewer的意見再次修改并提交新的request狸剃。
how
在了解pull request的應(yīng)用場景后掐隐,現(xiàn)在嘗試在github上進行第一次的pull request。
由于最近在學習<a >vue</a>钞馁,同時利用<a >freecodecamp</a>的項目作為練手(畢竟自己提需求總是在徇私 W( ̄_ ̄)W )虑省,所以把自己寫好的<a >vue小項目</a>鏈接提交到<a >awesome-vue- Example ★11,002 </a>上面去,被尤大大的項目收錄還是很激動噠(≧▽≦)/僧凰。
所以以下的對象:尤大大的awesome-vue倉庫探颈,本人(路人甲)的倉庫。
Step 0:
先到Github page上對awesome-vue官方項目進行fork操作
Step 1:
在對awesome-vue官方項目進行fork操作后允悦,自己的Github服務(wù)端就有了一個項目的副本膝擂,也就是可以在自己的repo中看到同名項目虑啤。
Step 2:
把剛剛fork的Github倉庫克隆到本地隙弛,這樣才能在本地對項目進行修改或者更新。打開cmd或者git bash狞山,進行g(shù)it clone全闷。
git clone https://github.com/your-github-name/your-project.git
Step 3:
現(xiàn)在本地已經(jīng)有了項目副本,是否可以立刻對項目進行更新或者修改呢萍启?Github很棒的地方在于讓我們每個協(xié)作者都有屬于自己的開發(fā)環(huán)境而不影響主項目总珠,項目reviewer可以看到你更新的部分并且進行與現(xiàn)有項目的合并。
現(xiàn)在勘纯,我們應(yīng)該創(chuàng)建一個屬于自己的分支局服,在這個屬于自己的分支中進行更新,這個分支將是隨后發(fā)起pull request時要提交的源分支驳遵。
cd your project
創(chuàng)建屬于自己的分支淫奔,并切換到該分支
git branch -b your-branch
查看當前所在分支
git branch
Step 4:
在屬于自己的分支進行項目內(nèi)容更新,并且把你的更新提交到你的github遠程倉庫中堤结。
編輯一些代碼/更新項目文件
git commit -a -m "新功能的一些草稿"
git push orgin your-branch
Step 5:
好(o)/~ 現(xiàn)在可以把自己的項目更新進行pull request了唆迁!可以讓項目reviewer看到自己的東西并且合并到項目中去了!竞穷!
Github上已經(jīng)有了自己的feature分支之后唐责,點擊項目簡介下的 New Pull request 按鈕,創(chuàng)建一個pull request瘾带。
Step 6:
當點擊New Pull request 按鈕后鼠哥,會自動跳轉(zhuǎn)到官方項目的repo,
如下圖,將vue/awesome-vue(<b>源倉庫</b>)的master(<b>源分支</b>)合并到<b>目標倉庫</b>的<b>目標分支</b>朴恳。
完成科盛!O(∩_∩)O!
Step 7:
靜靜等待項目reviewer審核你的request菜皂。
參考Reference:
- <a >基于Github的pull request流程做開源貢獻</a>
- <a >如何同步 Github fork 出來的分支</a>
===================假裝是分割線======================
Git 快速入門:
- <a >果殼中的 Git</a>
- <a href="http://www.reibang.com/p/66f41a89b6b5">Github 的注冊與使用教程以及github page (一)</a>
- <a href="http://www.reibang.com/p/cd1430161149">三十分鐘學會Git</a>
- <a >常用 Git 命令清單</a>
- <a >Learn Git Branching - 動畫教學</a>
- <a href="http://www.reibang.com/p/bfec042349ca">話說Svn與Git的區(qū)別(以后別再問我了)</a>
原創(chuàng)文章
簡書:<a href="http://www.reibang.com/u/c0600377679d">HelloCherry</a>
Github: <a >CaiYiLiang</a>
其它文章:<a href="http://www.reibang.com/p/7a35fa90810f">Node.js | 更tech地解決Excel表的郵件地址</a>
vue-projects:<a >vue-demos</a>
如果覺得有一點點幫助贞绵,一個??就是鼓勵(』衅⌒?⌒)