Используя инструменты Visual Studio 2008,
Я пытаюсь получить разность ASCII массивов изменений 14318 и 14317.
Я могу сделать настолько использующий GUI:
tf changeset 14318
и затем выберите файл и щелкните правой кнопкой, и выбор соответствуют предыдущей версии. Однако это немного утомительно, и это основано на GUI. Моя задача под рукой состоит в том, чтобы бэкпортировать много изменений в другое ответвление. Я хотел бы автоматизировать тестирование (скажите, что использование Python), удостоверяясь, что я сделал это правильно. Ну, в образовательных целях я внесу все изменения вручную, не смотря на решение, и затем я сравню два изменения и попытаюсь искать любые различия. Вот то, что я люблю в tf - я могу ввести:
tf changeset 14318 > out.txt&¬epad out.txt
посмотреть детали того, какие файлы были затронуты.
Точно так же я хочу получить out.txt со всеми различиями, сохраненными в нем. Я вполне уверен, что я могу обработать часть Python. Я определенно хочу знать, как сделать это с помощью инструмента tf.exe, но если Вы также, оказалось, знали другие приемы для выполнения этого (некоторый классный сторонний инструмент или сценарий PowerShell, затем сообщите мне также).
Спасибо!
О, между прочим, я проверил это: http://msdn.microsoft.com/en-us/library/6fd7dc73 (По сравнению с 80) .aspx
И я попробовал это:
tf diff 14318 14317
И я получил эту ошибку: Файл (или папка) c:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\14318 не существует.
Теперь спасибо.
Править: Есть ли какие-либо инструменты во всем, что может сделать это?
Вы просто не используете правильный синтаксис при вызове. В этом случае, он попытался сделать различие между вашей рабочей копией и базовой версией репозитория, из (несуществующих) файлов 14318
и 14317
.
Вместо этого вам нужно использовать диапазон изменений в /версии
, например:
tf diff $/Foo /version:C14317~C14318 /recursive /format:unified > foo.diff
Обратите внимание, что вы можете использовать ~
с любыми другими спецификациями версий - метками, датами и т.д. Подробнее см. здесь.