You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by Brandon Chubb <bf...@fenway.our.net> on 2008/01/18 18:10:51 UTC
conflicted link
If do a merge of a link and get a conflict, what's the correct
behavior? Seems like it wouldn't make sense to do any conflict
marking like with a regular file.
In my case I only care about a real softlink on a real OS (that supports
such a thing) -- not a regular file with some "link somefile" text
to fill in for real link support.
I find that what happens looks like this:
% svn merge -c 8 $REPO/trunk .
Skipped missing target: 'testfile'
A testfile2
svn: In directory '.'
svn: '.svn/tmp/tempfile.3.tmp' has unsupported special file type '<<<<<<<'
I have to then remove the .tmp file before doing a cleanup and revert.
The testlink.{merge-left*,merge-right*} links are setup as you would
expect, and there's a testlink.working that is a copy of the old
target of the link.
I was testing a fix for
http://subversion.tigris.org/issues/show_bug.cgi?id=3051
when I hit this -- that bug is fairly basic breakage when trying to
merge changes to a link.
(I confirmed the bad .tmp file behavior with both a 1.4.2 and 1.4.3 client
and 1.4.3 server.)
-bc
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: conflicted link
Posted by bf...@verizon.net.
Thanks for replying Stefan,
On Sat, 19 Jan 2008, Stefan Sperling wrote:
> On Fri, Jan 18, 2008 at 01:10:51PM -0500, Brandon Chubb wrote:
> > % svn merge -c 8 $REPO/trunk .
> > Skipped missing target: 'testfile'
> > A testfile2
> > svn: In directory '.'
> > svn: '.svn/tmp/tempfile.3.tmp' has unsupported special file type '<<<<<<<'
>
> Can you provide a shell script that reproduces this reliably?
Sure, see below..
>
> > I have to then remove the .tmp file before doing a cleanup and revert.
> > The testlink.{merge-left*,merge-right*} links are setup as you would
> > expect, and there's a testlink.working that is a copy of the old
> > target of the link.
> >
> > I was testing a fix for
> > http://subversion.tigris.org/issues/show_bug.cgi?id=3051
> > when I hit this
>
> Which fix for issue #3051 were you testing? Do you have one?
I've got one that works for the basic case, but since this is the
first time I've touched svn code, I should review svn/apr routines
instead of using standard C stuff, probably revisit any allocation
things I've done, and get someone more knowledgable to look it
over. (Not that it's that big a patch.)
This assumes a fresh repo, but if not, see the "makes R4" line
and use the same thing on the final merge. Here again, I don't
know what normal "recipes" look like. It's not a bright thing
for the user to do perhaps, but I'm carefully avoiding the #3051
bug buy not removing old link targets, which makes it look less
realistic.
mkdir linktest
cd linktest
svn co svn://localhost/linkrepo .
mkdir trunk branches
svn add trunk branches
svn ci -m "start trunk,branches" .
svn switch svn://localhost/linkrepo/trunk
echo "test" > testfile1
ln -s testfile1 testlink
svn add testfile1 testlink
svn ci -m "add test file and link" .
svn cp -m "start branch" svn://localhost/linkrepo/trunk svn://localhost/linkrepo/branches/10
echo "more testing" > testfile2
ln -sf testfile2 testlink
svn add testfile2
svn ci -m "update link" . # makes R4
svn switch svn://localhost/linkrepo/branches/10
echo "yet more testing" > testfile3
svn add testfile3
ln -s testfile3 testlink
svn ci -m "update link in branch" .
svn merge -c 4 svn://localhost/linkrepo/trunk .
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Re: conflicted link
Posted by Stefan Sperling <st...@elego.de>.
On Fri, Jan 18, 2008 at 01:10:51PM -0500, Brandon Chubb wrote:
> % svn merge -c 8 $REPO/trunk .
> Skipped missing target: 'testfile'
> A testfile2
> svn: In directory '.'
> svn: '.svn/tmp/tempfile.3.tmp' has unsupported special file type '<<<<<<<'
Can you provide a shell script that reproduces this reliably?
> I have to then remove the .tmp file before doing a cleanup and revert.
> The testlink.{merge-left*,merge-right*} links are setup as you would
> expect, and there's a testlink.working that is a copy of the old
> target of the link.
>
> I was testing a fix for
> http://subversion.tigris.org/issues/show_bug.cgi?id=3051
> when I hit this
Which fix for issue #3051 were you testing? Do you have one?
--
Stefan Sperling <st...@elego.de> Software Developer
elego Software Solutions GmbH HRB 77719
Gustav-Meyer-Allee 25, Gebaeude 12 Tel: +49 30 23 45 86 96
13355 Berlin Fax: +49 30 23 45 86 95
http://www.elego.de Geschaeftsfuehrer: Olaf Wagner