2016-11-10 9 views
0

Разработчик при извлечении некоторых функций из более крупного проекта в отдельный новый проект меньшего размера, к сожалению, удалил существующий файл, а затем добавил этот же файл в новое место. (Лучшей альтернативой было бы сделать Move, поэтому TFS знает историю).TFS: Как восстановить способность слияния после того, как кто-то удалил и снова добавил вместо Moved file?

Спустя некоторое время в ветке обслуживания исходный файл был обновлен с помощью новой функциональности.

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

Есть ли способ научить TFS, что файл действительно просто перемещен? (Помимо отката назад/Удалить и выполнить перемещение)

+1

С каким из них вы снова сливаетесь? Старое местоположение с удаленным файлом или новое место с добавленным файлом? –

+0

@ Patrick-MSFT Слияние с другой веткой, где старое местоположение все еще нетронутым, в новую ветку, где с тех пор было удалено старое местоположение. –

+0

Это необоснованное слияние? Я создаю тест в TFS2015 с необоснованным слиянием, он работает хорошо, вам просто нужно разрешить конфликты. Однако в TFS 2010 исходный файл и повторно добавленный файл, возможно, не имеют отношений слияния. Для этой ситуации вы можете либо откат, либо объединение нового ветви на ветку обслуживания, чтобы добавить этот файл и внести изменения в новый добавленный файл, отбросить исходный файл. –

ответ

1

С момента удаления старого файла и чтения того же файла. Однако в TFS это полностью новый файл, и эта операция потеряет историю с новым добавленным файлом. В следующий раз, когда вы случайно удалили файл в TFS, вы можете restore a item deleted from server.


Update

Для вашей ситуации, исходный файл и файл повторно добавил, возможно, не имеющие отношения слияния. Для этой ситуации вы можете либо откат, либо объединение нового ветви на ветку обслуживания, чтобы добавить этот файл и внести изменения в новый добавленный файл, отбросить исходный файл.