2011-01-15 15 views

答えて

19

チェックアウトマスターブランチで(マスターへのDEVの名前変更多かれ少なかれ)

おかげで、DEVにそれをリセットし、プッシュ。 これは、リモート/マスターから分岐している可能性のあるダウンストリームユーザーに影響します。

git checkout master 

git reset --hard remote/dev 

git push -f 

これは、あなたのリモートおよびDEVが分岐するので、あなたが行ったコミットを失うことになりますが、あなたは、リモートの/ devと同じ状態になってしまいます。

+0

を - 私はすべての歴史をマスターが、維持するために、すべてのコミットを失うことになりますdevブランチの? – Boris

+0

はい、私は確信しています。 – RJFalconer

+0

これは私のために働いて、 'git push origin:refs/head/dev'で古いブランチを削除するために@ Romanの方法を使用しました – knocte

6

あなたがdev削除することもしたい場合は、その後、あなたのリモートがorigin命名され

git push origin +origin/dev:refs/heads/master 

と仮定すると:ちょうど確認するために

git push origin :refs/heads/dev 
+1

おそらく、おそらくハードリセットされたローカルマスター。 (その時点で、RJFalconerが提案したことをやったこともあります) – Cascabel

+1

@Jefromi:ローカルリポジトリの構造についてもっと多くの前提があります。例えば、ローカルの 'master'ブランチは、上流の' master'に何の活動もない場合、単に存在しないと想像するのは難しいことではありません。一般的に、ローカルブランチとリモートブランチ間のマッピングは任意ですが、ほとんどの人は実際にそれを簡単に保つ傾向があります。 –

+0

有効なポイントです。私は彼が彼の "リモート/マスター"にマッチする "マスター"を持っていると仮定しました。それにもかかわらず、大きな前提ではなく、前提です。 – RJFalconer

関連する問題