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」ボタンを押します。
すると、オリジナルのリポジトリがフォークされ、自分のアカウント配下に複製されます。
URLはhttps://github.com/lily1222/next-projectのようになっており、自分(lily1222)だけがいじれるリポジトリになっていることが確認できますね。
以降はこのリポジトリを自分のリモートリポジトリにして開発を進めていきますが、もし、オリジナルのプロジェクトに変更が入ったときに、その通知を受け取りたい場合は、以下のように、オリジナルのリポジトリの右上の「Watch」で設定をしておきます。
オリジナルのリポジトリを継続してウオッチングするということですね。
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」ボタンを押します。
管理者が、オリジナルのリポジトリでプル・リクエストをマージする
プル・リクエストを送ると、オリジナルのリポジトリの管理者にも通知されます。
管理者は、「Pull Request」の画面で変更内容を確認して、「Merge Pull Request」ボタンを押せば、Forkされたリポジトリからの変更内容をオリジナルに反映させることができます。
以上がGitHubで「fork and pull model」でリポジトリ共有して作業を進める一般的な流れになります。