[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: [PATCH] Fix merging with broken softlink as target

From: Karl Fogel <kfogel_at_red-bean.com>
Date: Thu, 08 May 2008 15:03:50 -0400

"David O'Shea" <david.oshea_at_s3group.com> writes:
> Ok, this is interesting. I've been looking at merge test 41 for a
> while and the difference with the patch applied is that a merge of a
> propset eol-style change into the working copy applies the propset but
> does not rework the line endings in the local file until committed.
>
> Without the patch applied, the line endings of the file in the wc get
> updated immediately as part of the merge.
>
> However, the first situation (where the patch is applied) means that
> merging the propset now has the same effect as manually doing the
> propset (i.e. manually doing svn ps eol-style does not change the line
> endings in the local file until you commit).
>
> So, my question is this... is the fact that the line endings were
> changed as part of the merge of a propset, but not by a manual propset
> a bug that this patch (inadvertently) fixes or was that difference a
> deliberate decision?

Hmm, that's interesting.

Yes, it looks like an inconsistency on the surface, but I'm not sure
it's inconsistent when considered deeply...

When you receive a propset of svn:eol-style from the repository, you're
also receiving whatever effect that propset had on the file it was
committed on. That is, in the merge-from-repos case, the commit has
already taken place, so it's natural that the line endings would change,
along with the property, on the receiver's side.

IOW, receiving the propset via update/merge is not quite the same as
doing the propset manually in your working copy. One represents a
commit that actually *has* taken place, the other represents an intent
to commit.

So I think the current behavior should be preserved. I'm not saying it
was a conscious decision (it may have been, I just don't remember). But
I'm pretty sure we don't want to change a merge behavior that seems to
have been working well for some years.

Possibly we could change 'svn propset' to fix up the line endings at
propset time... But surely we must have considered that and decided
against? It's too obvious not to have been discussed. Did you see a
comment anywhere indicating why we don't?

-Karl

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: dev-help_at_subversion.tigris.org
Received on 2008-05-08 21:04:05 CEST

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.