VS Codeの拡張機能「GitHub Pull Requests and Issues」を使って、VS Code内からプルリクエストを作成する方法を紹介します。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
前回はVisual Studio Code(以下、VS Code)からGitHubへローカルリポジトリの内容を公開する方法や、リモートリポジトリをローカルな環境にクローンする方法を見ました。今回はVS Codeからリモートリポジトリへプルリクエストを発行するのに便利な拡張機能を紹介します。
ここでは筆者が個人的に使用しているGitHubの有償アカウントと、筆者の会社のメールアドレスを使って作成した無償アカウントを2人のユーザーと見なして話を進めます(なお、GitHubでは個人が複数のアカウントを使用することは推奨されていません。筆者も本連載でのGitHubの説明が終わったら、これらをマージする予定です)。
前者のアカウントについてはmacOS上で操作することにして、VS Codeの配色テーマは[Dark+]に、GitHubの配色も[Default dark]に設定しました。こちらを仮に「macOS側」と呼ぶことにしましょう。
後者のアカウントについてはWindows上で操作することにして、VS Codeの配色テーマは[Light+]に、GitHubの配色は[Default light]に設定しました。こちらは「Windows側」とします。どちらで操作をしているかはウィンドウの配色で分かると思いますが、なるべくどちらでの操作かを明記するようにします。
macOS側のVS Codeで前回と同様な操作を行って、「pullreq_test」フォルダを作成し、その中にREADME.mdファイルを作成した後にそのフォルダをGitHubに公開しました。今回は中身もなく公開するような内容でもないことからプライベートリポジトリにしています。
そして、Windows側でGitHubにサインインしているアカウントにアクセス権を付与してあります。Windows側のアカウントのでは、このリポジトリをフォークして自分のアカウント上に大本のリモートリポジトリの内容をコピーしてあります。
そして、Windows側のVS Codeではフォークしたリポジトリの内容をローカルにクローンしました。
最後に便利な拡張機能「GitHub Pull Requests and Issues」をインストールしておきましょう。これには[拡張機能]ビューの検索ボックスに「github pull」などと入力して、[GitHub Pull Requests and Issues]を選択し、[インストール]ボタンをクリックするだけです。
インストールが終わると、アクティビティーバーには[GitHub]アイコンが増え、これをクリックすると以下のようにサイドバーに[GitHub]ビューが表示されます。
この画面ではなく、以下のようなサインインを促すビューが表示されたら、[Sign in]ボタンをクリックして、前回と同様な手順で認証を行ってください(といっても、ボタンを何度かクリックするだけです)。
[GitHub]ビューでは、プルリクエストとイシューをVS Codeの内部から発行したり、他者からそれらを受け取って対応したりできるようになっています。以下では、Windows側でREADME.mdファイルに変更を加えて、プルリクエストを作成してみましょう。
ここでは適当にREADME.mdファイルに手を入れました。
この変更をコミットして、変更の同期(プッシュ&プル)を実行すると、その変更はフォークしたリモートリポジトリに反映されます。
ですが、大本のリモートリポジトリには反映されていません。開発者が自分のリモートリポジトリに反映した変更を、大本のリモートリポジトリに取り込んでもらうためにはプルリクエストを作成し、そのコードをレビューしてもらい、問題がないことを確認してもらう必要があります。これは以下のように、GitHubのWebサイトからも行えます。
しかし、VS CodeとWebブラウザの間で操作を切り替えるのは、些細なことのようでも面倒です。そこで、先ほどインストールした拡張機能が役立ちます。VS Codeの中からプルリクエストを作成するには[GitHub]ビューの[Pull Requests]ペーンにある[Create Pull Request]ボタンをクリックします。
これをクリックすると、ビューが[GitHub Pull Request]に切り替わって、次のようになります(アクティビティーバーにも[GitHub Pull Request]アイコンが増えていることに注目してください)。
このビューの上にある領域にはマージしたい内容(Windows側で行った変更)が表示され、その下にある領域にはマージ先(ここでは大本のリモートリポジトリ)を記入されています。さらにプルリクエストのタイトルとその説明を入力する領域もあります。これらを入力して、[Create]ボタンをクリックすると、プルリクエストがフォーク元へと送られます。
Copyright© Digital Advantage Corp. All Rights Reserved.