smashwilson / merge-conflicts

Resolve git merge conflicts in Atom
https://atom.io/packages/merge-conflicts
MIT License
431 stars 42 forks source link

Implement a "why" button #139

Open smashwilson opened 9 years ago

smashwilson commented 9 years ago

This was actually one of the first ideas I'd had for this package, and for whatever reason I never got around to doing it, or writing it down.

On each conflict marker, I want to add a "Why" button. Pressing it presents you with a view that shows each commit that touched the conflict marker's diff on both sides of the merge, including the relevant diffs. That way, you can get some context about the specific conflict area was changed.

malexandre commented 9 years ago

It's sort of the same as the #9 no? I mean the three way merge is actually here to be able to compare to the origin.

smashwilson commented 9 years ago

Oh, it is like an enhanced version of a three-way diff marker - I hadn't thought of that.

Diff3 markers show you the content from the common ancestor, while this would ideally show you each commit on both sides, including the commit messages and any other changes that were made at the same time. I've wanted this personally (and replicated it with a bunch of git log calls) to try to put the changes that introduced a specific conflict into context and figure out what the correct resolution is.

Supporting diff3 is far less work, so it would certainly be higher priority for me :smile: And it's quite possible that I won't want this as much once that's in place.

dorian-marchal commented 8 years ago

:+1:, of course

axelson commented 8 years ago

Is this still planned? I do love diff3 but I think a feature like this is even better.

smashwilson commented 8 years ago

I certainly still think it'd be cool and useful :grin:

It is a big expansion of scope, though. It might be better to find (or write) a git log package that exposes a service and integrate with that.

With that being said: I work on this project in pretty short bursts, as time and energy permit, so I really don't want to raise hopes or commit to any sort of timeline :wink: