GitHubでリポジトリ共有して作業を進める一般的な流れ

GitHubはGitを利用したプロジェクト推進環境ですが、その多機能さゆえ、初めて使う人には、どこからどのようにはじめていいか分かりにくい場合もあります。

今回は、GitHubで「fork and pull model」を利用して開発を行う場合の一般的な流れをみてみることにしましょう。

 

Gitのインストール

はじめに、ローカルのPCにGitをインストールしておきます。以下の作業を進めるには、ローカルにGitが必要です。

Windowsであれば、この記事(git for windows 2.11をインストールする手順)を参考にしてくださいを参考にしてください。

 

GitHubアカウントの作成

次に、GitHubにアカウントを作成します。ユーザ作成は無料で簡単に行えますので、https://github.com← ここで作成しておきましょう。

 

オリジナルのリポジトリをフォーク(Fork)する

さて、GitHubにアカウントを作ったら、いろいろな公開リポジトリを閲覧してみて、自分の気になるリポジトリをForkしてみましょう。

GitHubには様々なオープンソースのプロジェクトがホスティング、公開されています。

以下の説明では、サンプルとして、私の個人の公開リポジトリ(https://github.com/pakun1222/next-project)を使うことにします。

(上記はこの記事用のサンプルですので、GitHubが初めてという方も、安心してためしてみてください。)

GitHubに作成した自分のアカウント(lily1222)でログインし、上記のURLに行ってプロジェクト(リポジトリ)を表示したら、 右上の「Fork」ボタンを押します。

image

 

すると、オリジナルのリポジトリがフォークされ、自分のアカウント配下に複製されます。

image

 

URLはhttps://github.com/lily1222/next-projectのようになっており、自分(lily1222)だけがいじれるリポジトリになっていることが確認できますね。

以降はこのリポジトリを自分のリモートリポジトリにして開発を進めていきますが、もし、オリジナルのプロジェクトに変更が入ったときに、その通知を受け取りたい場合は、以下のように、オリジナルのリポジトリの右上の「Watch」で設定をしておきます。

オリジナルのリポジトリを継続してウオッチングするということですね。

image

 

 

Forkした自分のリポジトリをローカルに複製して開発をすすめていく

Forkしたリポジトリを使って自分のPCで開発を行うには、このリポジトリをローカルのPCにCloneします。

以下のようにgit cloneコマンドでリポジトリを複製しましょう。

$ git clone https://github.com/lily1222/next-project.git

$ git remote -v
origin  https://github.com/lily1222/next-project.git (fetch)
origin  https://github.com/lily1222/next-project.git (push)

git remoteコマンドで確認すると、cloneした自分のGitHubのリポジトリが「origin」という名前でリモートとして認識されていることが分かります。

さて、これ以降は、ローカルのリポジトリ上でソースを変更したりしていきましょう。

変更がまとまってきたら、以下のようにPushして、Forkした自分のリポジトリを更新します。

$git push origin master

 

プル・リクエストする

さて、開発が進んできて、自分の行った変更をオリジナルのリポジトリに反映したくなったら、いよいよ「プル・リクエスト」します。

下記のように、自分のGitHub上のリポジトリから「new pull request」ボタンを押します。

image

 

 

管理者が、オリジナルのリポジトリでプル・リクエストをマージする

プル・リクエストを送ると、オリジナルのリポジトリの管理者にも通知されます。

管理者は、「Pull Request」の画面で変更内容を確認して、「Merge Pull Request」ボタンを押せば、Forkされたリポジトリからの変更内容をオリジナルに反映させることができます。

image

 

以上がGitHubで「fork and pull model」でリポジトリ共有して作業を進める一般的な流れになります。

こんな記事も関係あるかも

コメントを残す

サブコンテンツ

このページの先頭へ