merging lp:debian/sid/protobuf into lp:ubuntu/maverick/protobuf gives too many conflicts

Bug #591476 reported by Elliot Murphy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ubuntu Distributed Development
Triaged
High
Unassigned

Bug Description

The merge gives me a surprising number of conflicts. Jelmer mentioned this happens when you import from two different sources and there are different file ids. I'm filing this bug to see if the protobuf imports can be fixed so that merge from debian is as nice as it is for other packages.

lifeless suggested i save copies of the branches i hit this problem with so the importer doesn't destroy the evidence. so to see the problem, grab lp:~statik/ubuntu/maverick/protobuf/A and then try to bzr merge-package lp:~statik/debian/sid/protobuf/B into it.

I have 2.4.2 of bzr-builddeb installed and 2.1.2-1 of bzr installed.

Original recipe I used to see this problem:

 full recipe below:

bzr get lp:ubuntu/maverick/protobuf; cd protobuf
bzr merge-package lp:debian/sid/protobuf

gives me:
Text conflict in debian/control
Contents conflict in debian/libprotoc-dev.install
Conflict adding files to debian/patches. Created directory.
Conflict because debian/patches is not versioned, but has versioned
children. Versioned directory.
Conflict adding file debian/patches. Moved existing file to
debian/patches.moved.
Contents conflict in debian/patches/series
Contents conflict in editors/protobuf-mode.el
Conflict adding files to gtest. Created directory.
Conflict because gtest is not versioned, but has versioned children.
Versioned directory.
Conflict adding file gtest. Moved existing file to gtest.moved.
Contents conflict in gtest/CHANGES
Contents conflict in gtest/CONTRIBUTORS
Contents conflict in gtest/Makefile.am
Contents conflict in gtest/Makefile.in
Contents conflict in gtest/README
Contents conflict in gtest/configure
Contents conflict in gtest/configure.ac
Conflict adding files to gtest/include. Created directory.
Conflict because gtest/include is not versioned, but has versioned
children. Versioned directory.
Conflict adding files to gtest/include/gtest. Created directory.
Conflict because gtest/include/gtest is not versioned, but has
versioned children. Versioned directory.
Contents conflict in gtest/include/gtest/gtest-death-test.h
Contents conflict in gtest/include/gtest/gtest-spi.h
Contents conflict in gtest/include/gtest/gtest-test-part.h
Contents conflict in gtest/include/gtest/gtest.h
Conflict adding files to gtest/include/gtest/internal. Created directory.
Conflict because gtest/include/gtest/internal is not versioned, but
has versioned children. Versioned directory.
Contents conflict in gtest/include/gtest/internal/gtest-death-test-internal.h
Contents conflict in gtest/include/gtest/internal/gtest-internal.h
Contents conflict in gtest/include/gtest/internal/gtest-param-util-generated.h
Contents conflict in
gtest/include/gtest/internal/gtest-param-util-generated.h.pump
Contents conflict in gtest/include/gtest/internal/gtest-param-util.h
Contents conflict in gtest/include/gtest/internal/gtest-port.h
Contents conflict in gtest/include/gtest/internal/gtest-string.h
Conflict adding files to gtest/msvc. Created directory.
Conflict because gtest/msvc is not versioned, but has versioned
children. Versioned directory.
Contents conflict in gtest/msvc/gtest.sln
Contents conflict in gtest/msvc/gtest.vcproj
Contents conflict in gtest/msvc/gtest_main.vcproj
Contents conflict in gtest/msvc/gtest_prod_test.vcproj
Contents conflict in gtest/msvc/gtest_unittest.vcproj
Conflict adding files to gtest/samples. Created directory.
Conflict because gtest/samples is not versioned, but has versioned
children. Versioned directory.
Conflict adding files to gtest/scons. Created directory.
Conflict because gtest/scons is not versioned, but has versioned
children. Versioned directory.
Contents conflict in gtest/scons/SConscript
Conflict adding files to gtest/scripts. Created directory.
Conflict because gtest/scripts is not versioned, but has versioned
children. Versioned directory.
Contents conflict in gtest/scripts/gen_gtest_pred_impl.py
Conflict adding files to gtest/src. Created directory.
Conflict because gtest/src is not versioned, but has versioned
children. Versioned directory.
Contents conflict in gtest/src/gtest-death-test.cc
Contents conflict in gtest/src/gtest-filepath.cc
Contents conflict in gtest/src/gtest-internal-inl.h
Contents conflict in gtest/src/gtest-port.cc
Contents conflict in gtest/src/gtest-test-part.cc
Contents conflict in gtest/src/gtest.cc
Conflict adding files to gtest/test. Created directory.
Conflict because gtest/test is not versioned, but has versioned
children. Versioned directory.
Contents conflict in gtest/test/gtest-death-test_test.cc
Contents conflict in gtest/test/gtest-filepath_test.cc
Contents conflict in gtest/test/gtest-options_test.cc
Contents conflict in gtest/test/gtest-port_test.cc
Contents conflict in gtest/test/gtest-test-part_test.cc
Contents conflict in gtest/test/gtest-typed-test_test.cc
Contents conflict in gtest/test/gtest_env_var_test.py
Contents conflict in gtest/test/gtest_filter_unittest_.cc
Contents conflict in gtest/test/gtest_repeat_test.cc
Contents conflict in gtest/test/gtest_stress_test.cc
Contents conflict in gtest/test/gtest_unittest.cc
Contents conflict in gtest/test/gtest_xml_output_unittest.py
Contents conflict in gtest/test/gtest_xml_output_unittest_.cc
Contents conflict in gtest/test/gtest_xml_test_utils.py
Conflict adding files to gtest/xcode. Created directory.
Conflict because gtest/xcode is not versioned, but has versioned
children. Versioned directory.
Conflict adding files to gtest/xcode/Config. Created directory.
Conflict because gtest/xcode/Config is not versioned, but has
versioned children. Versioned directory.
Contents conflict in gtest/xcode/Config/FrameworkTarget.xcconfig
Conflict adding files to gtest/xcode/Samples. Created directory.
Conflict because gtest/xcode/Samples is not versioned, but has
versioned children. Versioned directory.
Conflict adding files to gtest/xcode/Samples/FrameworkSample. Created
directory.
Conflict because gtest/xcode/Samples/FrameworkSample is not versioned,
but has versioned children. Versioned directory.
Conflict adding files to
gtest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj.
Created directory.
Conflict because
gtest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj is not
versioned, but has versioned children. Versioned directory.
Contents conflict in
gtest/xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj
Conflict adding files to gtest/xcode/Scripts. Created directory.
Conflict because gtest/xcode/Scripts is not versioned, but has
versioned children. Versioned directory.
Contents conflict in gtest/xcode/Scripts/runtests.sh
Conflict adding files to gtest/xcode/gtest.xcodeproj. Created directory.
Conflict because gtest/xcode/gtest.xcodeproj is not versioned, but has
versioned children. Versioned directory.
Contents conflict in gtest/xcode/gtest.xcodeproj/project.pbxproj
Contents conflict in m4/acx_check_suncc.m4
Contents conflict in src/google/protobuf/stubs/once.cc
Contents conflict in src/google/protobuf/stubs/once.h
Contents conflict in src/google/protobuf/stubs/once_unittest.cc
95 conflicts encountered.
The merge resulted in 95 conflicts. Please resolve these and commit
the changes with "bzr commit".

Revision history for this message
James Westby (james-w) wrote :

Wow that's horrible. I think it's mainly an importer thing, as the upstreams
seem to have diverged for a while between Debian and Ubuntu, and so
we have the parallel import problem.

Thanks,

James

tags: added: conflicts merge usability
tags: added: suboptimal-import
Changed in udd:
status: New → Triaged
importance: Undecided → High
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.