みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
ノンプログラマー向けにGitHubを組織で活用する方法をシリーズでお伝えしています。
前回の記事はこちら。
GitHubの「フォーク」についての概要をお伝えしました。
が、概要についてお伝えしただけですので、今回は実際にその操作方法についてお伝えしていきますよ。
ということで、今回はGitHubでフォークしたリポジトリからプルリクエストを作成する方法をお伝えします。
では、行ってみましょう!
GitHubでリポジトリをフォークする
前回に引き続き、以下の設定で進めますね。
- Organizationアカウント「nonproken」のリポジトリに
- Read権限しかないメンバーが開発参加したい
では、さっそくリポジトリをフォークしていきましょう。
目的のリポジトリのページを開いて、右上の「Fork」をクリックします。
ここで、「Fork」がクリックできない場合は、Organizationの設定を変更する必要がありますので、以下記事を参考に設定を変更してください。
続いて、以下のようなダイアログが表示されますので、フォーク先のアカウント(自分のアカウント)をクリックします。
これで、自分のアカウントにリポジトリがコピーされて、以下の画面が開きます。
リポジトリ名を見ると「フォーク」のアイコンに続いて「自分のアカウント名 / リポジトリ名」という表記になっているのが確認できますね。
フォークされたリポジトリは書き込みができますので、好きなように変更を加えることができます。
フォークしたリポジトリでプルリクエストを作成する
では、フォークしたリポジトリに変更を加えて、プルリクエストもしてみましょう。
今回は、GASを例にしますので、GAS GitHubアシスタントを使いますが、プルやプッシュ時の考え方は一緒です。
ちなみに、GAS GitHubアシスタントについては以下の記事からはじまるシリーズをご覧くださいね。
mainブランチをプルする
では、改めて作業をはじめましょう。
まず、新規のGASプロジェクトを作成して、そこにフォークしたリポジトリのmainブランチをプルしてみます。
GAS GitHubアシスタントで、フォークしたリポジトリ、mainブランチを選択して、「↓l」アイコンをクリックすると、無事にコードが取得できます。
ちなみに、プルであれば閲覧権限でもOKなので、元のリポジトリからでも行うことができます。
ブランチを作成する
続いて、ブランチを作成します。
ブランチのプルダウンから「Create new branch」を選択して、ブランチ名を入力、「Create」です。
プッシュする
これでブランチが作成できましたので、コードを編集してプッシュをします。
GAS GitHubアシスタントの「↑」アイコンで開く「Diff」ダイアログで、コメントを入力して「Push」です。
これで、自分のアカウント配下にあるフォークしたリポジトリに変更が反映されたはずです。
なお、ここで書き込み権限がないリポジトリに対してブランチ作成をすると…
[github assistant] Failed to create new branch.
プッシュをすると…
[github assistant] Failed to push: [object Object]
というエラーになります。
プルリクエストを作成する
GitHubのフォークしたリポジトリにアクセスすると、無事にプッシュされていて、しかも「Compare & pull request」が表示されています。
これをクリックすることで、元のリポジトリにプルリクエストをすることができるわけです。
続く画面で、コメントを入力して「Create pull request」をクリックします。
これで、元のリポジトリに以下のようにプルリクエストが作成されました。
あとは、リポジトリについてWrite権限を持つユーザーのいずれかがレビュアーとなって、レビューのやり取りを行い、マージを目指せばよいということになります。
まとめ
以上、GitHubでフォークしたリポジトリからプルリクエストを作成する方法をお伝えしました。
さて、次回はプロジェクトにリクエストをしたり、課題管理をしたりするIssueの機能について紹介します。
どうぞお楽しみに!