私は、Gitの新しいクライアントを採用して以来、ここ数ヶ月間だけ使用しています(ソフトウェアのバージョン管理を管理するために使っていたものです)。マスターブランチを別のブランチに置き換える - git merge -s ours?
私は最近development
ブランチを自分のローカルmaster
ブランチにマージし、master
をサーバーに送りました。サーバーにプッシュする前に私のサイト(Django/Pythonで書かれたWebサイト)を自分のローカル開発マシンでテストしたところ、正しく動作していたようだ(development
ブランチで実装されたバグ修正を含む)。
しかし、サーバーにプッシュした後の変更をテストしたところ、サイトの一部が壊れていたことがわかりました。だから私はサーバー上の古いcommit
をチェックアウトし、ライブバージョンは現在、古い「commit
」を使用しています。つまり、「分離されたHEAD」状態ですが機能しています。
私のローカルmaster
ブランチは現在、私がサーバーにプッシュしたバグ修正版(ローカルでは動作していますが、サーバー上にはありませんでした)ですが、サイトでは、master
のバックアップに戻して、development
ブランチをmaster
にバグフィックスしたものをマージするようにしたので、コードの「最新の作業状態」から開発しています。私は私のマシン上で持って
枝は、以下のとおりです。
master
(それはそれにdevelopment
をマージする前にあったようmaster
枝IE)(development
と他の何かが壊れている、それにマージ)
masterBackup
(オリジナルのバグが修正された分岐があるが、何か他のものが今壊れている)
development
したがってmasterBackup
は実際にはdevelopment
をmaster
にマージしてmaster
に破棄して以来、現時点で私の仕事の「マスター」ブランチです。 masterBackup
私の 'master'ブランチをもう一度作りたいと思い、現在の状態のmaster
を破棄/削除することができます。私はまだdevelopment
ブランチを持っているので、なぜ/どのようにこれがサイトを壊したのか調べて、master
に再度マージする前にそれを修正してください。
私は受け入れ答えは、私は、次の手順を実行する必要があることを示した上でHow to replace master branch in git, entirely, from another branch?の質問が見つかりました:
git checkout masterBackup
git merge -s ours master
git checkout master
git merge masterBackup
をしかし、私は決定的なものは、コマンドgit merge -s ours
が...これで何をするのかについて見つけることができません私のmasterBackup
をブランチmaster
ブランチにもう一度ブランチさせる方法は間違いありませんか?