====== diff/merge software comparison ====== Relative links: * [[wp>Comparison of file comparison tools]] * [[stackoverflow>1871076|Free XML Diff/Merge tools]] ^ Feature ^ Line wrap ^ Does not show several lines as one modification block ^ Hotkeys for merging left/right, jump to next/previous block ^ Jump to next difference after copying the change ^ Efficient character comparison (no floating character problem) ^ | [[http://www.araxis.com/merge/Download.html|Araxis Merge]] | :YES: (//View -> Options -> Text Comparisons -> Display -> Wrap long lines + Break lines at word boundaries//) | :YES: (//View -> Options -> Text Comparisons -> Display -> Break changes into individual lines//) | :YES: (//View -> Options -> Text Comparisons -> Editing -> Use Ctrl and cursor keys to perform merging operations//) | :NO: | :YES: | | [[http://www.oxygenxml.com/download_oxygenxml_diff.html|oXygen XML Diff]] | :YES: (//Options -> Preferences -> Diff -> File Comparison -> Appearance -> Line wrap//) | :NO: | :YES: (assign in //Options -> Menu Short Keys//) | [[http://www.oxygenxml.com/forum/topic6249.html|–]] | [[http://www.oxygenxml.com/forum/topic6247.html|–]] | | [[http://www.altova.com/diffdog/diff-merge-tool.html|Aitova DiffDog]] | :YES: (//Text View -> Word Wrap//) | :NO: | :YES: (Alt+Down / Alt+Left) | :YES: | :YES:/:NO: | | [[http://www.scootersoftware.com/|Beyond Compare]] | :NO: | :NO: | :YES: (Ctrl+N / Ctrl+R) | :YES: | :HELP: | | [[http://www.coodesoft.com/|Compare++]] | :YES: (//View -> Word Wrap//) | :NO: | :YES: (Ctrl+N / Ctrl+R) | :YES: | :HELP: | | [[http://winmerge.org/|WinMerge]] | :YES: (//View -> Wrap lines//) | :NO: | :YES: (Alt+Down / Alt+Right) | :NO: | :HELP: | | [[http://www.elipse.org|Eclipse]] | :NO: | :NO: | :NO: | :NO: | :HELP: | \\ Araxis Merge: * :DEL: //View -> Options -> Text Comparisons -> Ignore all differences in whitespace// * :ADD: //View -> Options -> Text Comparisons -> Display -> Show whitespace characters// * :ADD: //View -> Options -> Text Comparisons -> Editing -> Expand tabs to 4 spaces// * :ADD: //View -> Options -> Text Comparisons -> Editing -> Tab inserts tab characters// * Shows the place in destination where the insertion should take place with a vertical pipe. oXygen XML Diff: * Switch to "Character" mode on the toolbar * :DEL: //Options -> Preferences -> Diff -> File Comparison -> Ignore whitespace// * :DEL: //Options -> Preferences -> Editor -> Show TAB marks + Show SPACE marks// * Allows to copy the character spans. * Shows the place in destination where the insertion should take place with a vertical pipe but only for selected span in the source. Aitova DiffDog: * ''Alt-Enter'' selects the current block * On the test it failed to make a clean comparison (depth analysis is not enough) * :ADD: //Tools -> Comparison Options -> Whitespace: Compare as is// * :DEL: //Tools -> Comparison Options -> Ignore blank lines// Compare++: * Is slow. Eclipse: * Can't do character comparison. WinMerge: * Can highlight non-matching characters per line, but no navigation (e.g. "Next difference in line"). * [[https://bitbucket.org/jtuc/winmerge2011/issue/31/feature-request-sort-xml-files-for-better|WinMerge 2011 can sort tags in XML files for better compare]] [[http://www.projectmerge.com/download.php|Project::Merge]]: * Merging is not implemented * Shows only XML structure comparison, not possible to switch to character comparison [[http://www.aquafold.com/aquadatastudio_downloads.html|Aqua Data Studio]]: * Comparison is a part of [[wp>Category:Data modeling tools|DB modelling / administration tool]]. * Merging is not possible * No line wrap ===== Libraries ===== From [[stackoverflowa>3006773/267197|diff implementation in Java]]: * [[googlecode>p/google-diff-match-patch/|google-diff-match-patch]] * [[googlecode>p/java-diff-utils/|java-diff-utils]] * [[http://www.manageability.org/blog/stuff/open-source-xml-diff-in-java|Open Source XML Diff Written in Java]] ===== Links ===== * [[habrahabr>150001|Обзор инструментов для визуального сравнения и разрешения конфликтов слияния]]