Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как объединить выбранные наборы изменений TFS с моей рабочей областью без включения всех предыдущих наборов изменений

Автор вопроса: BlueMonkMNОтветов: 2

Я работаю над проектом с другим разработчиком. Мы находимся в процессе крупного обновления с большим количеством критических изменений. Программное обеспечение, над которым мы работаем, является дополнением к продукту, и мы обновляем его для работы с новой версией продукта. Он проверил некоторые критические изменения, которые еще не будут работать в моей среде, потому что я все еще использую старую версию продукта. Я проверил некоторые изменения поверх них. Есть ли способ получить код таким образом, чтобы он включал только изменения до момента, предшествующего критическим изменениям, а также включал только мои изменения после этого в моей рабочей области?

Если бы я не сделал "получить последнюю версию", со мной сейчас все было бы в порядке, потому что я внес изменения на своей машине, чтобы они у меня были. Но теперь мне нужно "получить конкретную версию", чтобы вернуться ко всем критическим изменениям и каким-то образом объединить только мои наборы изменений в мою рабочую область. Но, кажется, нет способа объединить наборы изменений в рабочую область, только в другое дерево. Я мог выбрать только те файлы, к которым прикасался, и получить последние версии этих файлов, но некоторые из файлов содержат изменения как из моих наборов изменений, так и из его наборов изменений (а мои - после его).

Итак, что мне действительно нужно, так это способ объединить определенные наборы изменений в мое рабочее пространство (без сбора всех предыдущих изменений), чтобы вернуться к состоянию, в котором я был до того, как я сделал "Получить последние". Есть ли способ сделать это?

tfsvisual-studio-2010

Ответы

Ответ 1 · рейтинг 1 · BlueMonkMN

Похоже, нет хорошего способа сделать это. К счастью, у меня была другая ветвь, которая представляла изменения, которые я хотел (я только объединил в нее свои изменения, которые хотел). Мне казалось неправильным просто копировать все дерево поверх моего рабочего дерева, поэтому я использовал WinMerge, чтобы определить файлы, которые отличались, и скопировал только эти файлы (после беглого просмотра, чтобы убедиться, что это файл, содержащий мои изменения). -- было несколько файлов, сгенерированных Visual Studio, которые отличались только потому, что они находились по другому пути).

Поэтому я думаю, что общим решением было бы создать ветку в TFS, объединить в нее все, что вы хотите, получить локальную копию, а затем скопировать результаты в свое рабочее пространство. Однако это оставляет беспорядок в TFS (как полностью удалить фиктивную ветку?). К счастью, ветка, которая у меня была, была той, которую мы действительно хотели сохранить (у нас есть ветка сборки, отдельная от ветки разработки).

Ответ 2 · Paul Michaels

Я не совсем уверен, отвечает ли это на ваш вопрос, но если вы выберете "Получить конкретную версию ...", вы можете выбрать конкретный набор изменений.

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы