3

ブランチで作業していることに気付くことがあり、ブランチからのすべての変更をマスターブランチにマージして、マスターが今作業していたブランチのクローンであることが不可欠になるようにします。ブランチからのすべての変更がマスターにマージされるようにマスターを更新する簡単な方法はありますか?私が探している動作は、マスターがブランチの正確なクローンになるということです。私は通常、個々の競合を一度に1つずつマスターにマージしますが、これを行う簡単な方法はありますか?御時間ありがとうございます。

4

2 に答える 2

1

git reset --hard新しいマスターヘッドになりたいコミットのIDを使用して、ソリューションを作成する必要があります。

http://git-scm.com/2011/07/11/reset.html

編集:重複してフラグを立てます: gitのマスターブランチを完全に別のブランチから置き換える方法は?

私が言及した複製の解決策を見てください。しかし、望ましい結果によっては、私が提案したリセットが解決策になる場合があります。

于 2012-05-27T15:42:41.857 に答える
1

履歴を保持したい場合は、oursマージ戦略を使用してください。

git checkout branch
git merge -s ours master

マスターブランチの履歴を気にしない場合は、リセットしてください。

git checkout master
git reset --hard branch

(これにより、ローカルの変更がすべて破棄され、マスターのコミットに到達できなくなります!)

ブランチにないコミットがマスターにない場合は、マスターをブランチに早送りできます。

git checkout branch
git merge master
# or `git merge --ff-only master` to only allow fast-forward
于 2012-05-27T15:48:02.280 に答える