2017-10-10 5 views
0

私はちょっとびっくりしたいくつかのgitブランチをマージしようとしています。とにかく、私は最近、私の最新のローカルコミットが遠隔レポに記録したい状態を表す状況にあります。リモートgitを上書きする方法 "先にコミット"

しかし、私のローカルリポジトリはリモートレポの2コミットです。自分のローカルファイルがまったく変更されないように、ローカルとリモートのreposを同期する最良の方法は何ですか?

+1

'git push --force' – orhtej2

答えて

1

あなたは誰も使っていないブランチで作業している場合は、あなただけのいくつかのコミットを一掃しないので、これは非常に危険なコマンドであることを覚えておいてください

git push --force 

を使用することができますそのブランチ(あなたの知識なしに同僚によって導入された可能性のあるブランチを含む)がありますが、コミットが見つからないブランチを含む他のブランチで混乱を招くこともあります。

テイマー版--forceは、--force-with-leaseです。ローカルリポジトリが認識していなかったコミットを上書きしないようにしてください。

あなたは<commit-hash>が最後にあなたはまだ、元のブランチに共通していることにコミットしている

git rebase --interactive <commit-hash> 

を使用して検討する必要があります。コミットしてからすべてのコミットをスクラッシュし、元のブランチに対してマージまたはリベースすることができます。その後、通常のサーバーにプッシュします。これは、サーバーに変更を戻す危険性の低い方法です。

1

はただ与えられたコミットから別のブランチを開始し、

、新しい枝に歴史を書き換えする必要が働いていない始めます。

関連する問題