probably bug? merge A B and merge B A produce different set of conflicts

Alexander Belchenko bialix at ukr.net
Tue Nov 27 07:35:52 GMT 2007


Sometimes bzr merge produce conflicts. Nothing wrong usually.
Conflicts often unpleasant thing, but most of the time they
at least understandable.

But this situation is out of my understanding.
I have branch where I started case-insensitive filesystem detection
about of week ago. Now I want to continue this work and try
to merge with recent bzr.dev. Divergence between 2 branches
is not very big:

C:\work\Bazaar\devel\case.insensitive.wt>bzr missing ../bzr.dev --mine
You have 3 extra revision(s):
------------------------------------------------------------
revno: 2992
committer: Alexander Belchenko <bialix at ukr.net>
branch nick: case.insensitive.wt
timestamp: Wed 2007-11-14 17:11:58 +0200
message:
   Aaron's suggestion
------------------------------------------------------------
revno: 2991
committer: Alexander Belchenko <bialix at ukr.net>
branch nick: case.insensitive.wt
timestamp: Wed 2007-11-14 17:01:42 +0200
message:
   fix for mv change file's case on win32 adapted to CIFS detection
------------------------------------------------------------
revno: 2990
committer: Alexander Belchenko <bialix at ukr.net>
branch nick: case.insensitive.wt
timestamp: Wed 2007-11-14 16:25:30 +0200
message:
   WorkingTree4 is able to detect case-insensitive filesystem (+test).

revno 2991 is actually contains merged revisions from my first patch, 
other 2 revisions is plain ones.

Changes in this 3 revisions are:

C:\work\Bazaar\devel\case.insensitive.wt>bzr st -r2989..-1
modified:
   NEWS
   bzrlib/osutils.py
   bzrlib/tests/blackbox/test_mv.py
   bzrlib/tests/test_osutils.py
   bzrlib/tests/test_workingtree_4.py
   bzrlib/workingtree.py
   bzrlib/workingtree_4.py

Now if I merge bzr.dev into this branch I get conflict in NEWS (expected 
conflict, nothing special). And merge works correctly.

If I merge my branch into bzr.dev I get a bunch of completely unrelated 
conflicts in files I even don't touch!

C:\work\Bazaar\devel\bzr.dev>bzr merge 
C:\work\Bazaar\devel\case.insensitive.wt\
  M  NEWS
  M  bzrlib/branch.py
  M  bzrlib/errors.py
  M  bzrlib/fetch.py
  M  bzrlib/knit.py
  M  bzrlib/log.py
  M  bzrlib/plugins/launchpad/lp_registration.py
  M  bzrlib/plugins/launchpad/test_register.py
  M  bzrlib/repofmt/pack_repo.py
  M  bzrlib/repository.py
  M  bzrlib/tests/blackbox/test_log.py
  M  bzrlib/tests/repository_implementations/test_fetch.py
  M  bzrlib/tests/test_dirstate.py
  M  bzrlib/tests/test_errors.py
  M  bzrlib/tests/test_memorytree.py
  M  bzrlib/tests/test_smart.py
  M  bzrlib/tests/test_workingtree_4.py
  M  bzrlib/transform.py
  M  bzrlib/workingtree.py
  M  bzrlib/workingtree_4.py
Text conflict in NEWS
Text conflict in bzrlib/plugins/launchpad/test_register.py
Text conflict in bzrlib/repository.py
Text conflict in bzrlib/tests/test_errors.py
Text conflict in bzrlib/tests/test_smart.py
5 conflicts encountered.

Why all this files above is modified? I don't touch them.
IMO it's the bug in merge.

Alexander



More information about the bazaar mailing list