Git Rebase と Branch スイッチング

リベース

Rebase 別のブランチからのコミットを適用することによって、ブランチのコミット履歴を変更するプロセスです。 merge 変更を結合するために 使用する代わりに、 マージ コミットを作成せずに、現在のブランチのコミット履歴に新しいコミットを追加できるように rebase なります。 insert

たとえば、 feature-branch と の2 つのブランチがあるとします main。 現在作業中で、 feature-branch 最新のコミットを main 現在のブランチに適用したいと考えています。 これを実現するにはリベースを使用できます。

git checkout feature-branch  
git rebase main  

このコマンドを実行すると、Git は からコミットを取得し main 、それらを に適用します feature-branch。 これは、 上のすべてのコミットが から feature-branch のコミットの後に表示されることを意味します main。 その結果、 のコミット履歴がよりクリーンで読みやすくなります feature-branch

ただし、リベースを使用する場合は、コミット履歴を変更すると、パブリックに共有されているブランチに影響を与える可能性があることに注意することが重要です。 したがって、すでに現在のブランチからリモート リポジトリにコミットをプッシュしている場合は、競合やコミット履歴の混乱を避けるために、そのブランチでリベースを使用しないことをお勧めします。

 

Branch スイッチング

Git におけるブランチ切り替えとは、あるブランチから別のブランチに移動するプロセスを指します。 ブランチを切り替えると、Git は HEAD ポインタを新しいブランチに移動します。これにより、他のブランチに影響を与えることなく、そのブランチで作業して変更を加えることができるようになります。

たとえば、ブランチ feature-branch と があるとします main。 に切り替えるには feature-branch 、次のコマンドを使用します。

git checkout feature-branch

ブランチを切り替えた後、作業ディレクトリに変更を加えることができます。 すべての commitadd 、および checkout コマンドは現在のブランチに適用されます。

たとえば、新しいファイルを追加して にコミットすると feature-branch 、そのブランチのみにコミットが含まれ、 main 影響を受けません。 これにより、個別の機能を開発したり、バグを修正したり、コードの異なるバージョンを個別に作業したりすることができます。 必要に応じていつでもブランチを切り替えて、各ブランチを個別に作業できます。