リリースブランチ(RB、C5から開始)とトランク上のチェンジセット(C10)があり、これらをRBにマージします。
ファイルには、C3(両方に共通)、RB上のCS 7、C9(トランク)に1つ、C10に1つ変更があります。したがって、変更したファイルの履歴は次のようになります。
RB: C5 -> C7
Trunk: C3 -> C9 -> C10
C10 | C3 | C7
C10をトランクからRBにマージすると、C3が共通の祖先リビジョンであり、C10とC7がそれぞれ2つのブランチの先端であるため、マージウィンドウが表示されると思い
ます。ただし、マージツールで表示されますC10 | C9 | C7
。
私のマージツールはを表示するように構成されて%1(OriginalFile)|%3(BaseFile)|%2(Modified File)
いるので、TFSがベースリビジョンとしてC9を選択したことがわかります。
これはまったく予想外のことであり、MercurialやGitでのマージに使用されている方法とはまったく逆です。何か問題が発生したのでしょうか、それともTFSがマージで私を狂わせようとしているのでしょうか。
これはデフォルトのTFSマージ動作ですか?もしそうなら、なぜ彼らがそれをこのように実装することを選んだのかについての洞察を提供できますか?
クライアントとしてVS2010でTFS2008を使用しています。