1、TFS本身的冲突合并工具界面
2、使用第三方工具kidff3,它是一种三方合并工具,可以看到共同祖先
参数部分来自后面的表格
- %1 = Original file (in diff, the pre-changes file, in merge, the "server" or "theirs" file, the file that is the base file after "their" changes were applied)
- %2 = Modified file (in diff, the post-changes file, in merge the "yours" file - the base file with "your" changes applied)
- %3 = Base file (in the 3-way merge operation, the file which both "theirs" and "yours" are derived from - the common ancestor. This doesn't mean it's the version the changes were based from, since this may be a cherry-pick merge)
- %4 = Merged file (The output file for the merge operation - the filename that the merge tool should write to)
- %5 = Diff options (any additional command-line options you want to pass to your diff tool - this comes into play only when using "tf diff /options" from the command-line)
- %6 = Original file label (The label for the %1 file)
- %7 = Modified file label (The label for the %2 file)
- %8 = Base file label (The label for the %3 file)
- %9 = Merged file label (The label for the %4 file)
Compare tools
Product | Command | Arguments |
---|---|---|
TFS default | diffmerge.exe | %1 %2 %6 %7 %5 /ignorespace |
WinDiff | windiff.exe | %1 %2 |
DiffDoc (for Word files) | DiffDoc.exe | /M%1 /S%2 |
WinMerge | winmerge.exe | /ub /dl %6 /dr %7 %1 %2 |
Beyond Compare | bc2.exe | %1 %2 /title1=%6 /title2=%7 |
KDiff3 | kdiff3.exe | %1 --fname %6 %2 --fname %7 |
Araxis | compare.exe | /wait /2 /title1:%6 /title2:%7 %1 %2 |
Compare It! | Wincmp3.exe | %1 /=%6 %2 /=%7 |
SourceGear DiffMerge | DiffMerge.exe | /title1=%6 /title2=%7 %1 %2 |
Beyond Compare 3 | BComp.exe | %1 %2 /title1=%6 /title2=%7 |
TortoiseMerge | TortoiseMerge.exe | /base:%1 /mine:%2 /basename:%6 /minename:%7 |
Visual SlickEdit | win\vsdiff.exe | %1 %2 |
Merge tools
Product | Command | Arguments |
---|---|---|
TFS default | diffmerge.exe | /merge %1 %2 %3 %4 %6 %7 |
KDiff3 | kdiff3.exe | %3 --fname %8 %2 --fname %7 %1 --fname %6 -o %4 |
Visual SourceSafe | ssexp.exe | /merge %1 %2 %3 %4 %6 %7 |
Araxis | compare.exe | /wait /swap /a3 /3 /title1:%6 /title2:%7 /title3:%8 %1 %2 %3 %4 |
Beyond Compare (2-way merge) | bc2.exe | %1 %2 /savetarget=%4 /title1=%6 /title2=%7 |
WinMerge (2-way merge) | winmerge.exe | /ub /dl %6 /dr %7 %1 %2 %4 |
Guiffy | guiffy.exe | -s -h1%6 -h2%7 -hm%9 %1 %2 %3 %4 |
Ellie Computing | guimerge.exe | --mode=merge3 %3 %1 %2 --to=%4 --title0=%8 --title1=%6 --title2=%7 --to-title=%9 |
SourceGear DiffMerge | DiffMerge.exe | /title1=%6 /title2=%8 /title3=%7 /result=%4 %1 %3 %2 |
Beyond Compare 3 | BComp.exe | %1 %2 %3 %4 /title1=%6 /title2=%7 /title3=%8 /title4=%9 |
TortoiseMerge | TortoiseMerge.exe | /base:%3 /mine:%2 /theirs:%1 /basename:%8 /minename:%7 /theirsname:%6 /merged:%4 /mergedname:%9 |
Visual SlickEdit | win\vsmerge.exe | %3 %1 %2 %4 |
参考:http://blogs.msdn.com/b/jmanning/archive/2006/02/20/diff-merge-configuration-in-team-foundation-common-command-and-argument-values.aspx