開発ブランチをマスター ブランチと同一にする
この記事では、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 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