Stefan Sperling wrote:
> On Tue, Jan 08, 2013 at 11:03:41AM +0100, Neels Hofmeyr wrote:
>> I've just used 'svn patch'. There were missing target files, but I only
>> noticed a lot later; because all the text conflicts had .svnpatch.rej
>> files, but the missing targets were only listed in 'svn patch' output.
>> So in my particular case it would have helped to have .svnpatch.rej
>> files for missing targets. I would have noticed the lack of a target
>> and I could have immediately looked at the diff chunks without
>> having to browse through the original patch file. Does that
>> generally make sense? It would sometimes need to create parent folders
>> to place a rej file...
> Yes, it should probably do that.
> However, simple user errors such as using the wrong --strip argument
> can create a *lot* of skips. So I'd prefer a single
> within the target dir, rather than littering the working copy with
> a lot of 'svnpatch.rej' files.
> Note that UNIX patch creates a single Oops.rej files for files which
> don't exist.
> Assume for a second that 'svn patch' already had the ability to flag
> conflicts in the working copy (this is a planned feature). Should we
> then still create an unversioned skip file or do something else?
My preference: We should create conflicts in the WC, containing sufficient info for the user, including a reference to the original patch file when possible, and *not* write reject file(s) into the WC for skipped targets. Also I would seriously consider doing the same for all conflicting or otherwise rejected hunks, not writing any .rej files at all (after giving due thought to backward compatibility and so on).
Received on 2013-01-08 15:14:24 CET