Here's a test case that exemplifies a couple (but not all) of the
issues that I ran into while merging 4.2.x into 4.3.x and that I
don't understand.

First, the command I used to do the merge. I realize it's not quite
right (I should be merging just the diffs since the last merge but
I don't think it matter here).

  $ svn merge \
    https://svn.apache.org/repos/asf/stdcxx/branches/4.3.x/util \
    https://svn.apache.org/repos/asf/stdcxx/branches/4.2.x/util/@659252\
    /build/sebor/tmp/stdcxx/4.3.x/util
  U    /build/sebor/tmp/stdcxx/4.3.x/util/scanner.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/time.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/locale.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/loc_exception.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/path.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/memchk.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/display.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/charmap.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/aliases.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/util.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/ctype.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/exec.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/cmdopt.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/scanner.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/path.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/locale_stub.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/output.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/gencat.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/def.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/memchk.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/display.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/charmap.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/util.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/iconv.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/localedef.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/collate.cpp
  U    /build/sebor/tmp/stdcxx/4.3.x/util/aliases.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/target.h
  U    /build/sebor/tmp/stdcxx/4.3.x/util/runall.cpp

The output lists 29 out of the 40 files in the util/ subdirectory
yet svn status on the directory reports that only one file has been
updated:

  $ svn status /build/sebor/tmp/stdcxx/4.3.x/util
  M      /build/sebor/tmp/stdcxx/4.3.x/util/path.h

Even more strange, the output of svn diff reveals that the only
difference is in the $Id$ keyword:

~$ svn diff /build/sebor/tmp/stdcxx/4.3.x/util
Index: /build/sebor/tmp/stdcxx/4.3.x/util/path.h
===================================================================
--- /build/sebor/tmp/stdcxx/4.3.x/util/path.h   (revision 660541)
+++ /build/sebor/tmp/stdcxx/4.3.x/util/path.h   (working copy)
@@ -2,7 +2,7 @@
  *
  * path.h
  *
- * $Id:$
+ * $Id$
  *

***************************************************************************
  *

There are no differences in properties:

  $ svn proplist /build/sebor/tmp/stdcxx/4.3.x/util/path.h
  Properties on '/build/sebor/tmp/stdcxx/4.3.x/util/path.h':
    svn:keywords
    svn:eol-style
$ svn proplist https://svn.apache.org/repos/asf/stdcxx/branches/4.2.x/util/[EMAIL PROTECTED] Properties on 'https://svn.apache.org/repos/asf/stdcxx/branches/4.2.x/util/path.h':
    svn:keywords
    svn:eol-style
  $ svn propget svn:keywords /build/sebor/tmp/stdcxx/4.3.x/util/path.h
  Id
  $ svn propget svn:eol-style /build/sebor/tmp/stdcxx/4.3.x/util/path.h
  native
$ svn propget svn:keywords https://svn.apache.org/repos/asf/stdcxx/branches/4.2.x/util/[EMAIL PROTECTED]
  Id
$ svn propget svn:eol-style https://svn.apache.org/repos/asf/stdcxx/branches/4.2.x/util/[EMAIL PROTECTED]
native

Reply via email to