2012-04-27 4 views
2

У нас есть набор изменений, в котором разработчик проверил изменения в исходной и целевой ветви, многие изменения, включая переименования в обеих ветвях. Объединение набора изменений из ветки источника в целевую ветвь прекрасное, но набор изменений остается в списке смену, который нужно объединить.Слияние TFS: невозможно отменить набор изменений

Когда я пытаюсь снова объединить набор изменений, он говорит: «Есть изменения noe для слияния». И набор изменений остается в очереди.

Мы попытались использовать инструмент командной строки, чтобы отказаться от ревизии, как это:

C: \ SRC \ Проект \ sourceBranch> тс слияния/отбрасывания/рекурсивный/версия: C8137 ~ C8137 $/Project/sourceBranch $/ Project/targetBranch

Это не помогло. Мы также пробовали использовать другие варианты, такие как/force и/unless, без везения.

Какие еще существуют возможности избавиться от набора изменений среди кандидатов на слияние?

+0

Можете ли вы дать мне точную версию сервера TFS, который вы использовали (с пакетом обновления)? – Nock

+0

Я не администратор TFS, только администратор проекта. Как найти версию? Веб-доступ говорит «Версия 10.0.40219.1 (Object Model Version 10.0.40219.1) «В Team Explorer в Visual Studio я не могу найти информацию о версии. –

+0

Ваша версия TFS 2010 SP1 – Nock

ответ

2

Итак, у вас есть набор изменений с элементами, относящимися к двум ветвям, которые напрямую связаны. Что делает слияние такого набора изменений, используя подкомпонент частичного изменения набора изменений.

Поясню лучшим образом:

  • CS1234 (ваш наборов изменений)
    • Частичный CS1234A для ветви А (скажем, исходный филиал)
    • Частичное CS1234B для ветви В (скажем, цель)

Вы сделали слияние от а до Б, который слился CS1234A к В.

Теперь, когда вы пытаетесь выполнить новое слияние от A до B, у вас все еще есть CS1234 в качестве кандидата, не так ли? Затем, если вы выберете его, ничего не будет сделано, что вполне понятно из-за того, что вы уже объединили CS1234A и CS1234B, не относится к ветви источника (A).

Похож на ошибку от TFS для меня, с которой я уже сталкивался, я думал, что Microsoft исправила ее с RTM TFS 2010, по-видимому, нет.

В основном TFS дает вам CS1234 в качестве кандидата, потому что только частичная часть его была объединена, но поскольку другая частичная часть не может быть слиянием, нет смысла давать ее в качестве кандидата.

насчет:

Вы осуществляете слияние от В к А (в обратном порядке), это CS1234 дается в качестве кандидата? Мое предположение заключается в том, что если вы объедините CS1234 от B к A, тогда вы не будете больше беспокоиться об этом с помощью этого набора изменений, когда вы будете отображать кандидатов от A до B. Но я не знаю, будет ли это то, что вы готовы сделать.

В любом случае вы должны заполнить ошибку на Microsoft Connect site

+0

Ваш анализ верен, насколько я могу см. Я попытался слить другой путь без везения. Ошибка связана с Microsoft Connect: https://connect.microsoft.com/VisualStudio/feedback/details/739780/tfs-merge-cannot-discard- а-ревизия –

Смежные вопросы