Help us understand the problem. What is going on with this article?

Github で Fork して PullRequest を送るのはこんなに簡単

More than 1 year has passed since last update.

ふぉーくで始めるぷるりくえすと

image.png

「Fork ってなにそれ、怖い」

そんな風に思っていた昔の自分に贈る。

そういえば当時、解説ページを一瞬読んで、なんだか難しそうだと思って閉じてしまっていたような記憶もある。

で Fork って何?

ひとつのレポジトリを丸コピして、自分のレポジトリを作れる機能。

(どういうこと?)

「つまり、やりたい放題ってことだ!」

Pull Request と何の関係が?

僕が思うに、ここが分かりづらい。
言葉の響き的に関係してるような気がしない

(フォークは‥肉を食べるための‥道具‥!)

Githubでは、このForkという機能を「利用」して、本体のレポジトリを汚さずに、安全にPullRequestを送れる仕組みがある。

ここでは「PullRequestを送るための手順」ぐらいに考えておいたら良い。

試してみよう

好きなレポジトリを Fork する

好きなレポジトリを選んで、 Fork ボタンを押す。
押してみろ。そこから全ては始まる。

image.png

Fork される

自分のレポジトリが作成される。
本体のレポジトリからのクローンだ。

image.png

この例だと stympy/faker のコピーとして Yumainaura/faker が作られたのが分かる。

Forkした自分のレポジトリにコミットを積む

ブランチは何でも良い。

コミットを積んで push してみる。

ここでpushしたりbranchを作ったりという作業は、あくまで自分のレポジトリに対してのものなので、何をしても本体のレポジトリは汚さないし、壊さない。(これがForkの良いところ)

本体のレポジトリにPullRequestを送る

自分のレポジトリ の「Create Pull Request」ボタンを押してみよう。
( 本体レポジトリの「Create Pull Request」からは進めないので注意)

「本体のレポジトリのブランチ」に対して「自分のレポジトリのブランチ」のPullRequestを作れるのが分かるだろう。

image.png

こうやってレポジトリをクローンして、git的に安全な状態を保っておきつつ、つつましく本体レポジトリにPullRequestを送るというのが、Forkの礼儀正しさだ。

PullRequestが作成される

画像は、それがやがてマージされた例。

image.png

いかがだろう

簡単さの感触が伝われば幸いだ。

あわせて読みたい

ここでは「Fork式」のPullRequestを紹介したが「レポジトリ共有式」のPullRequest作成を理解していることが前提となる。

PullRequest自体に慣れていない人は自分だけのまっさらなレポジトリを作って、色々と遊んでみたら良いかも知れない。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした