溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

github中Pull請(qǐng)求的示例分析

發(fā)布時(shí)間:2021-12-03 10:33:05 來(lái)源:億速云 閱讀:196 作者:小新 欄目:大數(shù)據(jù)

這篇文章將為大家詳細(xì)講解有關(guān)github中Pull請(qǐng)求的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

Pull請(qǐng)求(Pull request)

1 綜述

    協(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ò)程!

2 步驟

2.1 Fork拷貝原始代碼倉(cāng)庫(kù)

    首先在原始代碼庫(kù)的Github網(wǎng)頁(yè)上Fork其代碼倉(cāng)庫(kù),此時(shí)會(huì)在自己的Github上生成原始代碼庫(kù)的一份拷貝。注意這里有兩種用戶:原始代碼倉(cāng)庫(kù)擁有者和Fork代碼倉(cāng)庫(kù)擁有者。

  1. 輸入原始代碼庫(kù)網(wǎng)址

  2. 點(diǎn)擊網(wǎng)頁(yè)上的Fork按鈕,拷貝原始代碼倉(cāng)庫(kù),此時(shí)會(huì)跳轉(zhuǎn)到自己的Github賬號(hào)頁(yè)面上。

2.2 克隆Fork代碼倉(cāng)庫(kù)到本地

    接下來(lái)使用git clone命令克隆一份Fork代碼庫(kù)到本地計(jì)算機(jī)。

  1. git clone git@github.com:HengStruggle/GitTest.git

    進(jìn)入到克隆下來(lái)的Git代碼庫(kù)里,可對(duì)文件進(jìn)行修改,***在提交到本地代碼倉(cāng)庫(kù)。

  1. 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"

2.3 Push 本地代碼倉(cāng)庫(kù)到Github代碼倉(cāng)庫(kù)

    接下來(lái)將本地代碼倉(cāng)庫(kù)推送到Github上的Fork代碼倉(cāng)庫(kù)上,注意不是原始代碼倉(cāng)庫(kù)。

  1. git push -u origin master

2.4 ***一步:Pull request

    進(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ù)擁有者合并你提交的代碼。

github中Pull請(qǐng)求的示例分析

圖1

github中Pull請(qǐng)求的示例分析

圖2

github中Pull請(qǐng)求的示例分析

圖3

2.5 原始倉(cāng)庫(kù)擁有者合并收到的Pull請(qǐng)求

    作為原始倉(cāng)庫(kù)擁有者有兩種方式合并收到的Pull請(qǐng)求。說(shuō)明:推薦在本地計(jì)算機(jī)上進(jìn)行合并方式,靈活性較強(qiáng)。

2.5.1 在GitHub上合并
  1. Github上合并,首先要找到合并頁(yè)面。進(jìn)入合并頁(yè)面的方式有多種,其中一種可以打開(kāi)Github上主頁(yè)面,點(diǎn)擊左上角的鈴鐺圖標(biāo),可以查看最近收到的Pull請(qǐng)求;另外在主頁(yè)左邊也可以直接查看別人的請(qǐng)求信息。如圖4。

  2. 確保沒(méi)有沖突之后,點(diǎn)擊Merge pull request按鈕,如圖5。

  3. ***合并成功,如圖6。

  4. 注意:在GitHub上進(jìn)行合并,必須確保沒(méi)有沖突產(chǎn)生

2.5.1 在本地計(jì)算機(jī)上進(jìn)行合并
  1. 合并前先在本地倉(cāng)庫(kù)里新建一個(gè)分支

    1. git checkout -b HengStruggle-master master
  2. 拉取協(xié)作者遠(yuǎn)程倉(cāng)庫(kù)的Pull請(qǐng)求分支到本地倉(cāng)庫(kù),注意這里的Pull請(qǐng)求分支不一定總是master,要視具體情況而定。注意:這里拉取的是協(xié)作者的代碼倉(cāng)庫(kù)的Pull請(qǐng)求分支!

    1. git pull https://github.com/HengStruggle/GitTest.git master
  3. 常規(guī)的合并分支并Push代碼

    1 git checkout master
    2 git merge --no-ff HengStruggle-master
    3 git push origin master

github中Pull請(qǐng)求的示例分析

圖4

github中Pull請(qǐng)求的示例分析

圖5

github中Pull請(qǐng)求的示例分析

圖6

關(guān)于“github中Pull請(qǐng)求的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(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)容。

AI