Создать патч в SubVersion очень просто. В Tortoise вы щелкаете правой кнопкой мыши и выбираете Create Patch. Но хоть убей, я не могу найти эту функциональность в TFS. Это возможно?
Если нет, то каков стандартный способ отправки исправлений в проекты, размещенные в TFS с открытым исходным кодом (а-ля CodePlex)?





tf diff /shelveset:shelveset /format:unified
Редактировать: Запись на стандартный вывод. Вы можете передать вывод в файл.
Дополнительные параметры см. В разделе Команда различия.
Существует стандартная программа UNIX под названием «patch», которая применяет унифицированные различия к исходным деревьям. Я уверен, что вы могли бы найти реализацию для Windows или использовать Cygwin.
@Doron отображает все различия между полками и текущей папкой рабочей области в формате, аналогичном: hg.shrinkrays.net/spruce/changeset/0d00e3c15e2c/raw/…
Как направить | в файл? Я думал, вам нужно перенаправить > в файл.
Если вы этого не делали раньше: в меню «Пуск» перейдите к Visual Studio, «Инструменты», «Командная строка». Затем перейдите в папку где-нибудь в локальном дереве рабочей области, например. c: \ build \ myProject \ src
Поскольку TFS изначально не поддерживает файлы исправлений, я часто вижу, что люди, использующие CodePlex, просто заархивируют измененные файлы и загрузят их. Затем координатор проекта сравнивает результаты со своей собственной кассой.
Однако, поскольку CodePlex также поддерживает TortoiseSVN, все больше и больше людей используют его для создания своих файлов исправлений.
Я написал сообщение в блоге о подобной проблеме, где я использовал команду TF.exe и 7Zip to создать файл патча TFS, которые затем можно было применить на другом сервере TFS или рабочем пространстве. Я разместил сценарии Powershell в Github, которые можно использовать для архивирования любых ожидающих изменений в одной рабочей области, а затем их применения на другом сервере. Его нужно будет изменить, чтобы использовать набор изменений вместо ожидающих изменений, но это не должно быть слишком сложно.
Этот сценарий использует весь файл, а не отдельные строки. Больше контролируемого копирования
Не могли бы вы объяснить немного больше? 1. Как бы вы применили этот патч? 2. Кроме того, если проект предназначен только для чтения для патчера, он не может создать набор файлов, не так ли?