web-dev-qa-db-ja.com

開発ブランチをマスターにリセットする方法

developブランチとmasterブランチがあり、developブランチが乱雑になっているので、それをリセットしてmasterのコピーとして作成したいと思います。 masterdevelopにマージすると、両方が同一になるかどうかわかりません。マージしようとした後、多くの競合が発生しました:

git checkout develop
git merge Origin/master
//got many conflicts
git checkout . --theirs

これはdevelopブランチがmasterと同一のコピーになるのに十分ですか?

ありがとう

26
trrrrrrm

developmasterと同一にする場合、最も簡単な方法はポインターを再作成することです。

git branch -f develop master

または、developを既にチェックアウトしている場合:

git reset --hard develop master

ただし、これらのオプションは両方とも、developにはないmasterの履歴をすべて削除することに注意してください。うまくいかない場合は、代わりにmasterの最新の状態を反映したコミットを作成することで保存できます。

git checkout develop
git merge --no-commit master
git checkout --theirs master .
git commit
43
Amber

同じものにしたいだけなら

それから

//from Develop and assuming your master is up to date with Origin/master
git reset --hard master
42
Tim Jarvis