Re: [PATCH] Enable and fix support for base less merges.
From: Junio C Hamano <hidden>
Date: 2016-06-15 22:42:08
Fredrik Kuivinen [off-list ref] writes:
quoted hunk
Anyway, the idea I have thought about is to use (probably base64-encoded) xdelta diffs for the binary files. With this approach git diffs could look like:diff --git --xdelta a/foo b/foo<base64-encoded xdelta data> Is this approach reasonable?
If we continue to operate within 3-way merge paradigm of "merging his changes to common ancestor into mine", more appropriate would be to make the use of "merge" a bit more configurable. As HPA mentioned, XML for example is a text file not binary, but textual merge of it often produces less than usable results, especially when it is machine generated, meant to be consumed by machines, and optimized for compactness. Just like we made merge strategy backends pluggable to git-merge, strategy backends, after making their own decision on what 3 blobs to use for 3-way file-level merge, can be told which low-level merge program to use (merge, diff3, wiggle, ...).