【Git 協作相關 #4】git pull request (PR) - 合併 change 到別人的 change 中 (或反之)

前言

在多人協作的時候,特別是在 github 這種可能會與陌生人合作的地方,
pull request 是一個讓自己的修改能合併到別人的修改的重要方法

舉例

這裡以與合作別人的 github 專案為例

step 1. fork 別人的專案

找到 fork 按下去複製一份到自己的地方

step 2. fork 後, 視同於自己的專案, 可以自由修改後上傳

自行修改與 push 非本文重點,這裡就不贅述

step 3. 提交 pull request 至他人的 repo

step 3-1. 建立新的 pull request (PR)

step 3-2. 選擇自己的 repo branch, 提交到對方的 repo branch

這裡是以 branch 為單位去 merge, 如果專案小也許就是 master 對 master
大的話可能就是 feature branch 或 master 對 feature branch 之類的… 可以自行推敲

剛進來可能會找不到自己的 repo, 因為目前的介面只有看的到對方的所有 branch

如果你也是此專案的直接 contributor, 當然可以直接上傳到原先的 repo
但我們不是, 我們是 fork 回來修改的,「非原 repo 的 contributor 」,
這時候我們就要選以下的按鍵,「去找自己 fork 的 branch

剩下的就是把一些資訊填一填,越清楚越好,好讓原作者知道你這修改在幹嘛。然後就可以提交了!

這裡也可以想想,如果真的想被 merge,如果是那種還要讓原作者自己慢慢 trace 你的 code 才能知道功能的
那想必一定會被放很久,或被擱置吧,所以這裡就盡量用心寫吧!

Reference