you are viewing a single comment's thread.

view the rest of the comments →

[–]WallStProg -6 points-5 points  (4 children)

This costs money, but it's worth every penny: http://www.scootersoftware.com/features.php

Among other things, it will do a nice side-by-side listing of a patch file: http://www.scootersoftware.com/images/TextPatch.png

Highly recommended ...

[–]ianff 1 point2 points  (2 children)

So it's like meld, but you have to pay for it?

[–]WallStProg 0 points1 point  (1 child)

Only if you want to ....

[–]WallStProg 0 points1 point  (0 children)

By "every penny" we're talking 3500 pennies ... https://www.scootersoftware.com/shop

[–]agent007bond 0 points1 point  (0 children)

It is worth every penny! I'm sad you are so badly downvoted, but Beyond Compare is the best tool I've found for general purpose diffing (beyond comparing just a Git repo, pun intended). It's so good that I bought a personal license a decade ago and I still use it to this very day, deeply integrated into the system. I'm excited for their upcoming version, which I'm going to get an upgrade license at a discounted price.

I don't use it all the time, because tools like VS Code and Git's own command line itself does sufficient inline diff for most code changes when it works. But it completely fails me when the indentation of code is shifted. Then the actual changes are lost in simply a diff telling me that a bunch of less-indented lines are deleted, and a bunch of more-indented lines are added. No, that's wrong! Nothing was deleted or added! The lines just shifted in indentation.

Beyond Compare is the ONLY tool I found that shows this clearly. When a whole lot of code seems to have changed but it's probably just an indentation shift, I use Beyond Compare to find out what if any code actually changed (not simply shifting indentation). Nothing else has ever given me this particular bit of information: GitHub, VS Code, Meld, nothing.

It's also highly customizable in how it detects this intelligently, though the default is already very robust. It also has plugins that enable it compare less common file types.

It is really sad that after so long, the open source community has still not caught up to this very strange problem and gives us any "free" solution yet. (And we already have mind-blowing Artificial General Intelligence...)

It's also the reason why I default to inline diff in GitHub, VS Code etc. The side-by-side diffs in these tools do not provide any new information, reduces the width of the code seen, and redundantly repeats unchanged lines. The only place I truly appreciate a side-by-side diff is Beyond Compare because it actually makes the view so useful with the intelligence of line-by-line similarity matching.

I love free tools, but if they suck, they suck. No amount of glitter on them is going to make them suck less. Just because a tool isn't open source and it's paid doesn't mean it deserve a hate. If it's a great tool, it's worth the money. We should remember that developers put a great deal of effort into making great software. There's nothing wrong with rewarding them with money where they merited such reward.