2009-08-21 2 views
26

Первоначально возник вопрос: «Как настроить WinMerge как инструмент сравнения и слияния для TFS». Тем не менее, я меняю его, потому что TehOne ответил на эту более общую форму вопроса.Как настроить TFS для работы с различными инструментами слияния

Я бы хотел, чтобы это уже было задано в Stackoverflow. Я нашел ответ в другом месте, но я спрашиваю/отвечаю здесь. Теперь это вики сообщества.

ответ

33

Когда я искал, как это сделать , Я счел этот пост неоценимым: http://blogs.msdn.com/jmanning/articles/535573.aspx

+1

Ваш Ответ заставил меня изменить вопрос и сделать его вики-сообществом. –

+1

Рад, что я мог бы помочь, но настоящий кредит, конечно же, идет к Джеймсу Мэннингу за этот пост в блоге. Это действительно помогло мне. Я не могу выдержать встроенные инструменты VSS/TFS. Таким образом, возможность использования моего уже установленного Beyond Compare очень велика. Спасибо, что сделали это вики для всех, чтобы вернуться назад. – TehOne

+0

Параметры, которые он использует для SourceGear DiffMerge, неверны. Правильные параметры можно найти здесь (http://stackoverflow.com/a/17523972/7850) –

12

Длинная процедура предусмотрена в a Rory Primrose blog posting

короткий ответ список аргументов для сравнения является:

/x /e /ub /wl /dl %6 /dr %7 %1 %2 

и список аргументов для объединения является:

/x /e /ub /wl /dl %6 /dr %7 %1 %2 %4 

Иногда Winmerge не возвращает 0, и TFS будет считать, что слияние было отменено. Вы должны использовать следующую обертку пакетный файл для объединения:

@rem winmergeFromTFS.bat 
@rem 2007-08-01 
@rem File created by Paul Oliver to get Winmerge to play nicely with TFS 
@rem 
@rem To use, tell TFS to use this command as the merge command 
@rem And then set this as your arguments: 
@rem %6 %7 %1 %2 %4 
"C:\Program Files\WinMerge\WinMerge.exe" /x /e /ub /wl /dl %1 /dr %2 %3 %4 %5 
exit 0 

И затем вы установили список аргументов в:

%6 %7 %1 %2 % 

выход 0

0

Для SourceGear DiffMerge вам необходимо изменить командную строку по умолчанию:

C: \ Program Files (x86) \ SourceGear \ Vault Client \ sgdm.exe

Я нашел параметры в this thread на форумах поддержки SourceGear, а также на блог Джеймса Мэннинга упоминается @TehOne, но приведенные здесь аргументы неверны и приводят к тому, что авто-слияние выполняется в обратном порядке, то есть старый код перезаписывает новый код. Правильные аргументы:

/м/t1 =% 6/t2 =% 7/t3 =% 8/с =% 9% 1% 3% 2/г =% 4

Смежные вопросы