Why are you quoting the svnbook definition of .mine .rOLD .rNEW to me?
I know what they are.

If your point was the ".mine file isn't created because it would be
identical to the working file", then, again: I don't care about the
implementation right now.  I don't care whether the contents is stored
in the .mine file, in the pristine store, or anywhere else.  I care
about the semantics of 'svn resolve' from a user's perspective.

Daniel

Bert Huijben wrote on Thu, Mar 19, 2015 at 07:27:54 +0000:
> From the svn book (‘Postponing conflicts’ in the 1.7 version. Probably the 
> main text before interactive resolution was added)
> 
> [[
> 
> 
> For every conflicted file, Subversion places three extra unversioned files in 
> your working copy:
> 
> filename.mine  
> This is the file as it existed in your working copy before you began the 
> update process. It contains any local modifications you had made to the file 
> up to that point. (If Subversion considers the file to be unmergeable, the 
> .mine file isn't created, since it would be identical to the working file.)
> filename.rOLDREV   
> This is the file as it existed in the BASE revision—that is, the unmodified 
> revision of the file in your working copy before you began the update 
> process—where OLDREV is that base revision number.
> filename.rNEWREV   
> This is the file that your Subversion client just received from the server 
> via the update of your working copy, where NEWREV corresponds to the revision 
> number to which you were updating (HEAD, unless otherwise requested).
> 
> 
> 
> ]]
> 
> 
> Bert
> 
> 
> Sent from Windows Mail
> 
> 
> 
> 
> 
> From: Daniel Shahaf
> Sent: ‎Thursday‎, ‎March‎ ‎19‎, ‎2015 ‎8‎:‎04‎ ‎AM
> To: Bert Huijben
> Cc: dev@subversion.apache.org
> 
> 
> 
> 
> 
> Stefan Sperling wrote on Thu, Mar 19, 2015 at 01:02:12 +0100:
> > On Wed, Mar 18, 2015 at 10:53:11PM +0100, Bert Huijben wrote:
> > > (Extending my original answer)
> > > 
> > > Mine-full should just be implemented as a simple resolve without changing 
> > > the file. The right 'mine' file is already in the right place on a 
> > > conflict of a binary file.
> > > 
> > > Creating a copy of a file, to allow replacing the original file with an 
> > > identical copy is not that useful.
> > > 
> > > 
> > > For text conflicts we create a file with conflict markers, and make the 
> > > original file available as mine.
> > > For binary files we can't (and don't) create such a file, so the file is 
> > > untouched.
> > > 
> > > Where does creating a copy help?
> > > 
> > >  Bert
> > 
> > Implementing the "mine-full" option as a simple resolve sounds good.
> > Restoring the working file from a copy might be a bad idea indeed.
> > Perhaps the user did change the file after we copied it!
> > So we could store the file's working copy path as "mine".
> 
> Actually, as a user, if I do:
> 
> % sha1sum file.bin
> 0xfoo
> % svn update --non-interactive file.bin
> C       file.bin
> % edit file.bin
> % sha1sum file.bin
> 0xbar
> % svn resolve --accept=mine-full file.bin
> 
> I'd expect the original version (0xfoo) to be installed.  That's how it
> works for non-binary files.  To accept the edited-post-conflict version
> (0xbar), I'd use accept=working.
> 
> Note that mine-full irreversibly destroys the edited-post-conflict
> (0xbar) version of the file.  Do people use mine-full and expect it to
> leave the 0xbar version untouched?
> 
> Cheers,
> 
> Daniel

Reply via email to