Skip to the content.

GitHub Desktop を使って履歴管理を行う[ブランチ編]

公開: 2025-02-12 10:31:44

GitHub Desktop というアプリケーションがあり、これでもリポジトリの履歴を管理することができます。具体的には、「History」タブを見ると、どんな変更をしたのかふりかえることが可能で、メニューから、あるいは右クリック(ダブルタップ)して、やりたいことを選ぶだけです。このドキュメントは、すでにリポジトリを作成し、main に Commit、Push までを行ったことがある人が次の段階に進むためにあります。

GitHub Desktop を使えばコマンドを覚えなくても直感的に操作でき、基本的なブランチ管理から Pull Request 作成までといった一連の過程も実現できます。慣れてくると、GUI はいちいち面倒で、煩わしく感じてくるものですが、まずは GitHub Desktop を使うことをお勧めします。以下の手順の概略を実践しながら理解するとよいです。

なお、GitHub Desktop というときには、アプリケーションのことを指し、単に GitHub というときには、Web 版の リモートの GitHub 本体のことを指します。

1. ブランチを作成します

✔ ポイント - main から新しい作業ブランチをつくる(「ブランチを切る」と呼ぶことが多いです)ことで、main を直接変更せずに済みます。上記では、GitHub Desktop を使って作成していますが、もちろん GitHub の Web 版でも可能で、コマンドラインも含めて、複数の方法があります。

2. 変更を加えて Commit します

✔ ポイント - Commit は「ローカル保存」なので、まだ GitHub には反映されていない状態です。

3. GitHub に Push します

✔ ポイント - Push すると、GitHub に変更が送信されますが、まだ main には反映されていません。

4. GitHub で Pull Request を作成します

✔ ポイント - Pull Request をつくる(プルリクを送る、プルリクを出す、と呼ぶことが多いです)ことで、変更を安全にレビューしてから main にマージできます。

5. Pull Request をレビューして main にマージ(Merge)します

✔ ポイント - 用が済んだら、ブランチは捨てるほうがよいです。すでに main に取り込まれたブランチは不要なので、削除する方が管理しやすく、もし必要ならば、最新の main から新しいブランチを作成する方が安全で確実だからです(旧いブランチに最新のメインの状態を反映させることもできますが、ここでは省略します)。もちろん、当面の間、コミットする予定があるのであれば、ブランチを都度捨てる必要はありません。

6. ローカルの main を最新に更新します

✔ ポイント - main が最新になっていることを確認し、新しい作業に進めます。

■ なぜブランチを切って更新し、その後 main にマージするのか?

直接 main に Push しない理由は大きく分けて3つほどあります。それぞれのポイントから説明していきましょう。

理由1: main を壊さないため

理由2: グループで作業しやすくするため

理由3: 履歴をわかりやすく保つため

✔ ポイント1 - main に直接 Commit → Push すると、その時点で GitHub 上の main も更新されるので、Pull Request を出す必要はありません(GitHub Desktop でも「Pull Request」ボタンは現れません)。Pull Request は、ブランチの変更を main にマージするためのものなので、そもそも main に直接 Push すれば、マージしなくてもよいからです。しかしながら、共同で作業をする場合には、ブランチを切るべきです。「幹(main)」がいきなり更新されてしまうよりも、いったん「枝(branch)」が更新され、それを共同で確認(Review)し終わってから、マージされるほうが衝突(Conflict)が生じにくくなります。

✔ ポイント2 - コード以外でも、リポートなどの添削をする場合がそうですが、ファイルを共同で編集することは多々あります。ゼミなどでその場で対応する場合には、いきなり main に Push するほうが(声をかけ合えばよいので)楽ですが、修正をする場合には、ブランチを切ってから Pull Request するのがよいでしょう。