Patch Set 2: (4 inline comments)

> isn't direction something the user decides on? This one can only tell that user added, delete or changed something relative to the merge base in non, one or both branches.

Yes, user can 'decides' on 'direction', changes that was marked as incoming when comparing 'origin/master' vs 'current branch' should be marked as outgoing wile synchronizing 'current branch vs 'origin/master'. The same is with outgoing changes when source and destination branch will be shwitched.