Github 作業中のローカルブランチにマスターの変更を反映させる方法

職場でgithubでプロジェクトを管理しているのですが、
一つのブランチでの作業が長くなると、ほかの開発者がマスターにマージした変更を自分のブランチに取り込みたいことがあります。

慣れたらなんてことない作業だと思いますが、この前初めて調べてやってみたので、記録に残しておこうと思います。

こちらの記事に書かれている通りにやったらできました。

[Git]作業中ブランチに居ながら最新の master を取り込む - Qiita

具体的な手順

作業ブランチの現在までの変更点をコミットしておいてから、
以下のコマンドを実行します。

git fetch origin

git merge --no-ff origin/master
コンフリクトがない場合

Ubuntuの場合、GNU nano 4.8というエディタが開くので、コミットメッセージを入力して、ctrl+Sで保存、ctrl+Xで終了します。

これで自動的にコミットまでしてくれます。

f:id:endoakak:20211203174836j:plain

ちなみに初めてやったときはGNU nano 4.8の使い方がわからず、閉じることすらできずに困り果てました。

コンフリクトしている場合

作業中のブランチと取り込もうとしているマスターでコンフリクトを起こしている場合、自動的にコミットは出来ません。

Nano 4.8が開かず、コンフリクトしているというメッセージが出た場合は、自分でコンフリクトを解消してコミットする必要があります。

最後に

もっと複雑なことをしないといけないのかと思っていましたが、意外と簡単でした。