web-dev-qa-db-ja.com

強制上書きによるGitマージ

demoというブランチがあり、それをmasterブランチとマージする必要があります。次のコマンドで目的の結果を得ることができます。

git pull Origin demo
git checkout master
git pull Origin master
git merge demo
git Push Origin master

私の唯一の関心事は、マージの問題がある場合、マージプロンプトを表示せずにgitブランチの変更を上書きするようにmasterに指示したいということです。したがって、基本的にdemoブランチの変更は自動的にmasterブランチの変更を上書きするはずです。

私は周りを見回して複数のオプションがありますが、私はマージでチャンスを奪いたくありません。

53
OpenStack

あなたはgit mergeで "ours"オプションを試すことができます、

gitマージブランチ-X ours

このオプションは私たちのバージョンを優先することによって衝突しているハンクをきれいに自動解決することを強います。私たちの側と衝突しない他のツリーからの変更はマージ結果に反映されます。バイナリファイルの場合、内容全体が私たちの側から取られます。

9
manuj