Ответ 1
Ответ на грант отлично подходит для устранения нескольких конфликтов.
Что касается того, почему у вас есть эти конфликты, вообще говоря, ваш клиент TFS обнаружил, что файл существует локально, который не управляется TFS, но вы пытаетесь выполнить операцию получения, которая будет перезаписывать этот файл.
Если вы следуете нормальному рабочему процессу разработки (и не собираетесь и не редактируете файлы за пределами своего редактора), наиболее распространенным источником конфликтов для записи является полки. Если вы хотите отложить добавление файла, вы должны отменить это добавление (либо явно, либо потому, что вы отменили изменение и отменили кнопку сохранения ожидающих изменений), файл не удален. (Это предотвращает потерю данных - это не редкость, что вы хотели бы создать файл, но не проверить его в исходном элементе управления.)
Теперь, если вы (или кто-то еще) должны были проверить этот предметный шкаф (либо путем создания сборки с этого полки или с закрытой регистрации, либо потому, что ваш рецензент кода проверен прямо на вашем полке), тогда, когда вы делаете получите последний, ваш TFS-клиент обнаружит, что файл все еще существует локально, и, следовательно, у вас будет конфликт, доступный для записи.
Это может быть не особенно очевидно в случае закрытой регистрации. Как работает закрытая регистрация, когда вы пытаетесь проверить свои изменения, ваша регистрация фактически конвертируется в полки. Затем агент сборки TFS попытается создать ваш shelveset, и если сборка завершится успешно, она затем зарегистрирует этот shelveset от вашего имени. Если сборка не удалась, полок остается, и вы можете устранить ошибки сборки.
По этой причине важно запустить приложение уведомления о сборке, когда вы используете закрытую регистрацию, что позволит вам "согласовать" ваши изменения после их отправки. Согласование вашей регистрации просто позволит получить регистрацию, которая была отправлена сервером сборки, но она избежит конфликтов, поскольку она понимает контекст изменений, которые находятся на вашем локальном диске. (Он будет сравнивать содержимое на вашем локальном диске с содержимым на сервере.) Если вы не решите согласовать, к сожалению, у вас, возможно, будут конфликты с записью на добавляемые файлы.
(Обратите внимание, что этот сценарий не приведет к конфликту в следующей версии TFS - если нет различий в содержимом, TFS не приведет к конфликту.)