この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
最近マジリク(マージリクエスト)のレビューを依頼されることがありました。今まではレビューの依頼が一切なかったので、他人がプッシュしたマージされていないブランチをどうやって確認すれば良いか分かりませんでした。今回の記事は、マージされていないブランチの確認方法をまとめてみました。
マージされていないブランチをローカルで確認する方法
マージされていないのでpullしてもローカルで確認することができません。そこで、以下のコマンドで確認できるようにします。git fetch
git checkout -b 「確認したいブランチ名」
fetchコマンドで、リモートにプッシュされたブランチの履歴をローカルにコピーします。
次にcheckoutコマンドでローカルにコピーしたブランチに切り替えます。これで、他人がプッシュしたマージされていないブランチの確認ができます。
fetchコマンド
上記のfetchコマンドについてもう少し説明すると、fetchはリポジトリとブランチを以下のように指定することができます。指定しない場合は全てのリポジトリのブランチをローカルにコピーします。git fetch 「リポジトリ」 「ブランチ名」
リポジトリがorigin、ブランチ名がtest_branchの場合は、以下のようになります。git fetch origin test_branch
fetchは、リモートから履歴を取得しているだけなのでローカルのファイルに影響がありません。ちなみにpullは、fetchした後にmergeを行う為ローカルのファイルが更新されてしまいます。
まとめ
普段は、fetch+mergeを使用せずにpullのみ使用していたのでfetchのことを知ることができる良い機会でした。gitはまだ使いこなせていないコマンドが多いので、少しでも多く使いこなせるように頑張っていきたいです。