開発ブランチをマスター ブランチと同一にする

John Wachira 2023年6月20日
開発ブランチをマスター ブランチと同一にする

この記事では、master ブランチと同じになるように development ブランチをリセットする方法について説明します。 Git リポジトリのクローンを作成し、master ブランチから development ブランチを作成したとします。

コードをいじってみると、ブランチが乱雑であることに気付き、master ブランチと一致するようにリセットしたいとします。 これについてどう思いますか?

開発ブランチをマスター ブランチと同一にする

development ブランチを master にリセットするには、2つの方法があります。 最も単純でクリーンな方法は、ポインターを再作成することです。

development ブランチのポインターを再作成するには、master ブランチに切り替えて、以下のコマンドを実行します。

$ git branch -f development master

これにより、master ブランチのコミット履歴と一致するように development ブランチのコミット履歴がリセットされます。

これに代わるものとして、git reset コマンドがあります。 まず、development ブランチに切り替えて、以下のコマンドを実行します。

$ git reset --hard master

このコマンドは、git branch -f コマンドと同じ効果があります。 ただし、これらのコマンドは両方とも、master ブランチに存在しない development ブランチの変更を無効にします。

これらの変更を排除したくない場合は、代わりに master ブランチの現在の状態を反映するコミットを作成できます。 これを行うには、次の手順を実行します。

まず、git checkout development コマンドで development ブランチに切り替えます。 以下に示すように、コミットを作成せずに master ブランチを development ブランチにマージします。

$ git merge master --no-commit

このコマンドは変更をマージしますが、コミット部分の前にマージを停止します。 以下のコマンドを使用すると、インデックスから master ブランチの変更をチェックアウトできます。

$ git checkout --theirs master .

. を含めることを忘れないでください。 コマンドの最後に。 残っているのは、変更をコミットすることです。

$ git commit -m"Resetting development to master"

これにより、master ブランチに存在しない変更が保持され、master ブランチの現在の状態が反映されます。

簡単に言えば、ポインターを再作成するか、または git reset --hard コマンドを使用して、任意のブランチを master にリセットできます。 どちらの方法でも、master ブランチに存在しない変更はなくなります。

これらの変更を保持したい場合は、最後に説明した方法を使用してください。

著者: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

関連記事 - Git Reset