Během práce u klienta jsem si pro "Compare" operace ve Visual Studiu (TFS) nainstaloval WinMerge a po návratu od něj (u klienta jsem dělal na jeho počítači) jsem zjistil, že už se bez něj nedokáži obejít a že mi standardní komparátor ve VS nestačí. A že jsem zapomněl, jak WinMerge pro spolupráci s VS správně nakonfigurovat. A protože se mi to nechtělo zjišťovat, obrátil jsem se s důvěrou na Strýčka Googla a našel původní dva články, ze kterých jsem vycházel:Using
winmerge as a merge tool in Visual Studio Team Suite a Using
WinMerge with TFS.
Postup je jednoduchý:
- Nainstalovat WinMerge
- Menu Tools, položka Options, pak ve stromu Source Control, pod ním Visual Studio Team Foundation Server a na něm tlačítko Configure User Tools...
- Vybrat .exe WinMerge a správně zadat Arguments
- Compare: /x /e /ub /wl /dl %6 /dr %7 %1 %2
- Merge: /x /e /ub /wl /dl %6 /dr %7 %1 %2 %4
Má to jenom jednu chybu, a sice když je v nastavení WinMerge zašrtnuto "Allow only one instance tu run" a člověk se jej z VS pokusí otevřít ještě jednou, neotevřou se porovnávané soubory jako nová záložka v běžící instanci WinMerge, ale skončí to s podivnou chybou "The system cannot find the file specified". A vypadá to spíše na chybu VS, protože ten file (v TFSTemp), kterého se WinMerge domáhá, skutečně neexistuje.