您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)github中Pull請(qǐng)求的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
Pull請(qǐng)求(Pull request)
協(xié)作者通過(guò)fork一個(gè)新的代碼庫(kù)用來(lái)獨(dú)立開(kāi)發(fā),并通過(guò)Github上的Pull Request,將變更貢獻(xiàn)回原始代碼庫(kù)。這其中對(duì)Github的要求較低,至少免費(fèi)使用,操作也相對(duì)簡(jiǎn)單,是一種不錯(cuò)的協(xié)作方式。以下將圖文并茂的展示整個(gè)協(xié)作過(guò)程!
首先在原始代碼庫(kù)的Github網(wǎng)頁(yè)上Fork其代碼倉(cāng)庫(kù),此時(shí)會(huì)在自己的Github上生成原始代碼庫(kù)的一份拷貝。注意這里有兩種用戶:原始代碼倉(cāng)庫(kù)擁有者和Fork代碼倉(cāng)庫(kù)擁有者。
輸入原始代碼庫(kù)網(wǎng)址
點(diǎn)擊網(wǎng)頁(yè)上的Fork按鈕,拷貝原始代碼倉(cāng)庫(kù),此時(shí)會(huì)跳轉(zhuǎn)到自己的Github賬號(hào)頁(yè)面上。
接下來(lái)使用git clone命令克隆一份Fork代碼庫(kù)到本地計(jì)算機(jī)。
git clone git@github.com:HengStruggle/GitTest.git
進(jìn)入到克隆下來(lái)的Git代碼庫(kù)里,可對(duì)文件進(jìn)行修改,***在提交到本地代碼倉(cāng)庫(kù)。
cd GitTest //進(jìn)入到克隆下來(lái)的Git代碼庫(kù)里
打印GitTest.txt文件內(nèi)容,并在文件尾添加自己的用戶名,***再提交到本地代碼倉(cāng)庫(kù)。說(shuō)明:一個(gè)較好的習(xí)慣是在master上另建一個(gè)分支,再進(jìn)行修改,***再提交新建的分支;主分支用于存儲(chǔ)原始代碼倉(cāng)庫(kù)的代碼
1 cat .\GitTest.txt 2 "version 0.2 by HengStruggle">>.\GitTest.txt 3 git commit --all -m "version 0.2"
接下來(lái)將本地代碼倉(cāng)庫(kù)推送到Github上的Fork代碼倉(cāng)庫(kù)上,注意不是原始代碼倉(cāng)庫(kù)。
git push -u origin master
進(jìn)入我們fork的代碼庫(kù)的GitHub頁(yè)面,選擇需要提交給原始代碼倉(cāng)庫(kù)的分支,然后點(diǎn)擊Pull Request按鈕,再點(diǎn)擊new pull request按鈕,***再確認(rèn)。如圖1,圖2,圖3。至此你作為協(xié)作者的任務(wù)已經(jīng)完成,接下來(lái)的事就是等待原始倉(cāng)庫(kù)擁有者合并你提交的代碼。
圖1
圖2
圖3
作為原始倉(cāng)庫(kù)擁有者有兩種方式合并收到的Pull請(qǐng)求。說(shuō)明:推薦在本地計(jì)算機(jī)上進(jìn)行合并方式,靈活性較強(qiáng)。
Github上合并,首先要找到合并頁(yè)面。進(jìn)入合并頁(yè)面的方式有多種,其中一種可以打開(kāi)Github上主頁(yè)面,點(diǎn)擊左上角的鈴鐺圖標(biāo),可以查看最近收到的Pull請(qǐng)求;另外在主頁(yè)左邊也可以直接查看別人的請(qǐng)求信息。如圖4。
確保沒(méi)有沖突之后,點(diǎn)擊Merge pull request按鈕,如圖5。
***合并成功,如圖6。
注意:在GitHub上進(jìn)行合并,必須確保沒(méi)有沖突產(chǎn)生
合并前先在本地倉(cāng)庫(kù)里新建一個(gè)分支
git checkout -b HengStruggle-master master
拉取協(xié)作者遠(yuǎn)程倉(cāng)庫(kù)的Pull請(qǐng)求分支到本地倉(cāng)庫(kù),注意這里的Pull請(qǐng)求分支不一定總是master,要視具體情況而定。注意:這里拉取的是協(xié)作者的代碼倉(cāng)庫(kù)的Pull請(qǐng)求分支!
git pull https://github.com/HengStruggle/GitTest.git master
常規(guī)的合并分支并Push代碼
1 git checkout master 2 git merge --no-ff HengStruggle-master 3 git push origin master
圖4
圖5
圖6
關(guān)于“github中Pull請(qǐng)求的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。