0

devブランチをmasterブランチにマージしようとしていますが、これが初めてなので、用語を完全に誤解していると思います。

まず、マージを試みました:

devをmasterにマージしようとしましたが、機能しませんでした。競合を解決するとき、これは「自分の」開発ブランチをマスターにマージすることを意味すると考えて「私たち」を使用しましたが、状況は変わりましたが、サイトは開発ブランチがチェックアウトされたときと同じようには見えませんでした。

それから私はリベースを試みました:

次に、マスターブランチをdevブランチと同一にすることを強制すると考えて、無謀にリベースを試みましたが、サイトが最初のマージ後と同じように見えるため、競合を解決するために間違ったオプションを使用した可能性があります。

この時点で、masterブランチをdevブランチと同じにすることはできますか?

devブランチに戻ると、サイトは正しく見えます-変更をマスターブランチにマージして、サイトがdevブランチがチェックアウトされたときと同じように見えるようにするにはどうすればよいですか?

または、この時点で、masterをdevと同じにする方法はありますか?

申し訳ありませんが、これが簡単な場合は、gitの用語がわかりにくく、読んだ回答やチュートリアルを理解していないようです。助けていただければ幸いです。

ところで、私はMacGitクライアントのTowerを使用しています。

乾杯

4

2 に答える 2

0

「マスターを開発者と同じにする」場合、常に機能する手順は次のとおりです。

  • マスターブランチを削除します(git checkout dev; git branch -D master
  • devからマスターブランチを再作成します(git branch master; git checkout master

...これで、2つのブランチは同一になります(同じHEAD、したがって同じ履歴)。

問題は、マージの失敗後にリセットされなかった可能性があります。理論的には、リベース(共通の祖先を使用)またはマージのいずれかにより、両方のブランチからの変更を統合するブランチが生成されます。マージが期待どおりに進まない場合は、前にリセットして再試行してください。満足するまで結果をコミットしないでください!

于 2012-06-21T21:26:51.497 に答える
0

Macクライアントはわかりませんが、Windows / Linux用のgitクライアントとEclipseのプラグインを使用しており、すべてに強制的に更新するオプションがあります。

グラフィックインターフェイスでプッシュを実行すると、オプションが表示されます。そうでない場合は、コマンドラインでオプションを追加する必要があります。

しかし、厳しい力の更新の前に、これを試しましたか?

-変更をコミットします

-マスターブランチからプル

-マージツールを使用します。Eclipseでは、他のアップストリームからブランチを比較することもできます。競合が解決したら、すべてのファイルを再度追加しますgit add .

-もう一度コミットしてください!

-ブランチをマスターブランチにプッシュします

うまくいけば、タワーを知っている誰かがあなたをもっと助けることができます!

于 2012-06-21T21:30:02.873 に答える