2011-07-08 15 views
20

これは非常にばかげた質問だと感じていますが、どこでも答えは見つかりません。TFSが変更を保留中のファイルにマージする

私たちはDevブランチとQAブランチを持っています。 DevからQAへの一連の連続チェンジセットをマージし、競合を解決します。今すぐマージしたばかりの変更(最初のマージからの変更をチェックしていない)を介して、後のチェンジセットをマージします。いいえサイコロ、TFSは述べていない:

The item $/My/Path/to/the/file.vb has an incompatible pending change. 

その問題は何?保留中の変更が加えられたファイルに新しいチェンジセットをマージするために私にマージ競合オプションが与えられないのはなぜですか?私は最初のマージをチェックインしたくないので、別のチェンジセットをマージすることができます。

答えて

19

TFSでは、同じファイルが両方とも変更されている場合、複数の非連続チェンジセットをマージすることはできません。あなたの最善の選択肢は、変更の最初のセットをチェックインしてからマージを行うことです。

+16

本当に?うわー、TFS。どのようなばかげた問題。 –

+2

これは古いコメントですが、http://visualstudio.uservoice.com/forums/121579-visual-studio/suggestions/2638075-tfs-to-merge-multiple-non-continuous-changesets-はユーザーの声の問題ですTFSチームがこれに対処するためのものです。 – MushinNoShin

+1

同様の回答はこちらhttp://stackoverflow.com/questions/3905901/how-to-merge-two-changesets-only-tfs/3909246#3909246 –

1

ブランチするフォルダをチェックインするだけで十分です。

私の場合、ターゲットブランチに新しいフォルダを作成しましたが、「追加」状態(チェックインなし)であったため、同じ問題がありました。このフォルダをチェックインした後、うまくいきました。

2

私は別の理由でこの同じ問題を経験していました。私はここで私の解決策を教えてくれました。

私はメインから分岐したブランチ(branched_from_main)を持っていました。私はbranches_from_mainに変更を加え、それらをtfs repoにチェックインしました。その後、分岐した_from_mainをメインにマージしようとすると、この問題が発生しました。しばらくそれを調べた後、私は主なソリューションを開いて構築したことに気付きました。これは、ソリューションがすべてのナゲットパッケージを引き下げたことを意味しました。したがって、私のメインブランチはパッケージを保留中の変更と見なしていました。

この問題を解決するには、主なソリューションを再度開いて、保留中の変更を元に戻す必要がありました。それから、分岐した_メイン_メインをマージすることができました。

0

私は同じ問題を抱えていました。保留中のローカル変更をすべて元に戻し、保留中の変更を取り消しました。それは私の問題を解決した。

関連する問題