Currently for merges without conflicts gitk
shows no diffs. Is it possible to have the diffs resulting from a merge (which are indeed there, e.g. git diff HEAD~1
after the merge shows these diffs) shown by defautl, e.g. using a command line switch? Or why does gitk by default not show them?
However, Git always uses a single algorithm for computing both L and R, so the order does not matter here. To put this another way, if you manage to produce a Doppelgänger file—one that has different content from, but the same hash as, some existing file, Git simply refuses to put that file into the repository.
Recursive is the default merge strategy when pulling or merging one branch. Additionally this can detect and handle merges involving renames, but currently cannot make use of detected copies. This is the default merge strategy when pulling or merging one branch.
No, merging does only affect one branch.
By default gitk
does the same thing as the --cc
option to git diff
and compresses the merge to only show diff chunks that don't come directly from one or other parent. This is usually more helpful as conflicts are the interesting part of merges, the other parts of the diff will already appear in the diffs for the commits that made up the branch which was merged in.
The easiest way to view the full diff between a parent of a merge and the merge commit is to select the parent (normal click) and from the context menu on the merge commit (right/alternate click menu) select "Diff selected -> this".
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With