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

Re: Problems during merge

From: Neels J Hofmeyr <neels_at_elego.de>
Date: Thu, 11 Feb 2010 13:00:01 +0100

Hi Christoph,

it would be nice if you could provide a way to reproduce this issue. I am
aware that this can be some work, and we would highly appreciate it. :)

I too have seen some weird conflict markings and it would be nice to get a
handle on them. But we need to be able to reproduce them before we can do
that :(

I'm attaching a test script template for unix shells which creates a clean
repository and working copy for you to run svn commands in. "Simply" append
your commands after the comment that says "ACTUAL TEST".

e.g. append lines like:

 svn mkdir trunk
 echo 'this is file foo' > trunk/foo
 svn add trunk/foo

 svn commit -m "revision 1"

etc.
(Assuming that you are on a unix-like box, or that you are using cygwin)

Thanks,
~Neels

Christoph Bartoschek wrote:
> Hi,
>
> after a merge with conflicts I completely wrong conflict markers:
>
>
> ======================= inv_merge.C =============================
> ...
> } else {
> <<<<<<< .working
> =======
> _cur.sinks(to_polarity(other)).append(csol.sinks());
>>>>>>>> .merge-right.r13821
>
> _cur.sinks(to_polarity(other)).append(csol.sinks());
>
> Time slew_limit =
> ...
> ==================================================================
>
> In my working copy there is:
>
> ======================= inv_merge.C.working ======================
> ...
> } else {
>
> _cur.sinks(to_polarity(other)).append(csol.sinks());
>
> Time slew_limit =
> ...
> ==================================================================
>
> The right part only differs in an empty line:
>
> =============== inv_merge.C.merge-right.r13821 ===================
> ...
> } else {
> _cur.sinks(to_polarity(other)).append(csol.sinks());
>
> Time slew_limit =
> ...
> ==================================================================
>
> In the left part we have:
>
> =============== inv_merge.C.merge-left.r13820 ===================
> ...
> } else {
> _cur.sinks(to_polarity(other)).append_slice(csol.sinks().begin(),
> csol.sinks().size());
>
> TimePair slew_limit =
> ...
> ==================================================================
>
>
> I would have expected that I see the code of the left part in the merge view
> and not two times the code from working.
>
> What is going wrong here?
>
> Christoph

#!/bin/bash

## TO MAKE THIS RUN YOUR CUSTOM COMPILED SVN, two simple options:
## 1. Adjust your PATH to point at your custom installed location:
## export PATH="$HOME/prefix/svn_trunk/bin:$PATH"
## OR
## 2. Uncomment the four lines below to use aliases into your
## built source tree. The next line is the only line you should
## need to adjust.
# SVNDIR=/path/to/built_subversion_source_tree
# function svn() { ${SVNDIR}/subversion/svn/svn "$@"; }
# function svnserve() { ${SVNDIR}/subversion/svnserve/svnserve "$@"; }
# function svnadmin() { ${SVNDIR}/subversion/svnadmin/svnadmin "$@"; }

set -e

svn --version
REPOS="`pwd`/repos"
URL="file://$REPOS"
rm -rf repos wc
svnadmin create repos

# enable all revprop changes
cat > repos/hooks/pre-revprop-change <<EOF
#!/bin/sh
exit 0;
EOF
chmod a+x repos/hooks/pre-revprop-change

svn co -q ${URL} wc

set +e
set -x
cd wc

## ACTUAL TEST

Received on 2010-02-11 13:00:46 CET

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

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