マスターとOrigin /マスターを傍観者に捕らえて、そのブランチの変更に興味を持ちません。
これらの指示に従って、ローカルマスターが正しい場所を指すようにしました 現在のgitブランチをマスターブランチにします
git checkout better_branch
git merge --strategy=ours master # keep the content of this branch, but record a merge
git checkout master
git merge better_branch # fast-forward master up to the merge
git statusが提供する以外は問題なく動作しました
C:\data\localprojects\Beko2011Azure [master]> git status
# On branch master
# Your branch and 'Origin/master' have diverged,
# and have 395 and 2 different commits each, respectively.
#
nothing to commit, working directory clean
それでは、Origin/master(github)に自分のマスターを反映するように説得するにはどうすればよいですか。 Origin/masterで孤立したものはすべて安全に破棄できます。
Origin/master
をmaster
と同じにするには:
git Push -f Origin master:master
パラメーターに関する議論:
-f
はforceフラグです。通常、ブランチへのプッシュが許可される前に、いくつかのチェックが適用されます。 -f
フラグはすべてのチェックをオフにします。
Origin
は、プッシュするリモートの名前です(1つのリポジトリに複数のリモートがある場合があります)
master:master
は、ローカルブランチmaster
をリモートブランチmaster
にプッシュします。一般的な形式はlocalbranch:remotebranch
です。これを知ることは、リモートでブランチを削除する場合に特に便利です。その場合、空のローカルブランチをリモートにプッシュし、削除します:git Push Origin :remote_branch_to_be_deleted
man git-Push
を使用すると、パラメーターのより詳細な説明を見つけることができます。
反対方向:master
に対するすべての変更を破棄し、Origin/master
とまったく同じにしたい場合:
git checkout master
git reset --hard Origin/master