From: Nix Date: Mon, 23 Jul 2007 22:05:03 GMT Subject: Re: [RFC PATCH] Re: Empty directories... Message-ID: <87hcnun5dc.fsf@hades.wkstn.nix> In-Reply-To: <87lkd6n62i.fsf@hades.wkstn.nix> On 23 Jul 2007, nix@esperi.org.uk outgrape: > (I'd recommend storing the names of user/group file owners as well as > the uids, so you can --- given suitable permissions --- chown to the > right username in preference to uid if that user exists at checkout > time.) Suddenly this gets more complex. git-merge-file(1) has to understand the contents of this file, so as not to consider merges conflicting unless two files actually have different permissions (i.e. doing a line by line diff, and combining the two such that at most one file with a given name exists in the result), and so as not to consider lines with differing ownerships conflicting unless we're running under a uid in which we can change ownerships at all. (I'd like to track ownership but it's looking like a bit of a nest of snakes.) And the problem is that while git has a lot of strategies for merging *trees*, its file merge system is totally unpluggable: it just falls back to xdiff's merging system. I guess I'll have to add that feature :) (How does this cope with binary files, I wonder? I seem to recall something about that flying past back before the volume of the git list overwhelmed me...)