未マージのブランチでテストする
前のステップでは、git branch --merged
が完全に統合されたブランチを表示する方法を見ました。次に、現在のブランチにマージされていないブランチがある場合にどうなるかを見てみましょう。
~/project/my-time-machine
ディレクトリにいて、master
ブランチにいることを確認してください。git status
でこれを確認できます。
feature/add-farewell
という名前の新しいブランチを作成し、そのブランチに切り替えましょう。
git branch feature/add-farewell
git checkout feature/add-farewell
ブランチが切り替わったことを示す出力が表示されるはずです。
Switched to branch 'feature/add-farewell'
次に、新しいファイルを作成し、このブランチでコミットを行いましょう。
echo "Farewell from the farewell branch!" > farewell.txt
git add farewell.txt
git commit -m "Add farewell file"
コミット後、以下のような出力が表示されるはずです。
[feature/add-farewell a1b2c3d] Add farewell file
1 file changed, 1 insertion(+)
create mode 100644 farewell.txt
次に、master
ブランチに戻りましょう。
git checkout master
ブランチが切り替わったことを示す出力が表示されるはずです。
Switched to branch 'master'
現在、master
ブランチにいます。そして、feature/add-farewell
ブランチには master
ブランチに存在しないコミットが含まれています。
再度 git branch --merged
を使ってみましょう。
git branch --merged
以下のような出力が表示されるはずです。
* master
feature/add-greeting
feature/add-farewell
が出力に含まれていないことに注意してください。これは、feature/add-farewell
で行ったコミットが master
ブランチにマージされていないためです。
次に、git branch --no-merged
コマンドを使ってみましょう。このコマンドは、現在のブランチにマージされていないブランチを表示します。
git branch --no-merged
以下のような出力が表示されるはずです。
feature/add-farewell
この出力は、feature/add-farewell
が master
ブランチに含まれていないコミットを持っているため、正しく feature/add-farewell
を表示しています。
git branch --merged
と git branch --no-merged
コマンドは、ブランチを管理するための強力なツールです。これらのコマンドは、どのブランチが完了して削除できるか、どのブランチがまだ開発中でマージが必要かを追跡するのに役立ちます。