bzr merge shows file as modified although they did not change

Bug #243359 reported by Markus Korn
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
Confirmed
Medium
Unassigned
Breezy
Triaged
Low
Unassigned

Bug Description

Today I ran into a strange issue, 'bzr merge' showed me a file as (M)odified but according to 'bzr diff' and 'bzr status' this file did not change at all.
Please ping me if any more information is needed.

Markus

markus@thekorn:~$ cd /tmp
markus@thekorn:/tmp$ bzr branch lp:python-launchpad-bugs main
Branched 105 revision(s).
markus@thekorn:/tmp$ bzr branch lp:~bughelper-dev/python-launchpad-bugs/intrepid.merge new
Branched 139 revision(s).
markus@thekorn:/tmp$ cd new/
markus@thekorn:/tmp/new$ bzr merge ../main
 M debian/changelog
 M launchpadbugs/html_bug.py
All changes applied successfully.
markus@thekorn:/tmp/new$ bzr status
modified:
  debian/changelog
pending merges:
  Brian Murray 2008-06-26 updated debian/changelog for revno 104
    Markus Korn 2008-06-26 * launchpadbugs/html_bug.py: InfoTable: fixed par...
markus@thekorn:/tmp/new$ bzr diff
=== modified file 'debian/changelog'
--- debian/changelog 2008-06-20 21:58:41 +0000
+++ debian/changelog 2008-06-26 21:26:53 +0000
@@ -4,6 +4,8 @@
   * launchpadbugs/lphelper.py: fixed html-parser for Dapper again,
     workaround for broken libxml2 (LP: #220679)
   * launchpadbugs/html_bug.py: fixed adding new subscribers (LP: #235681)
+ * launchpadbugs/html_bug.py: InfoTable: fixed parsing of milestone if user
+ is not allowed to change values (LP: #243057)
   * launchpadbugs/http_connection.py: added progress_hook to
     HTTPConnnection (LP: #239684)
   * More robust parser for the +text-mode:
@@ -24,7 +26,7 @@
   * launchpadbugs/basebuglistfilter.py: updated broken filter option for bug
     supervisor

- -- Markus Korn <email address hidden> Fri, 20 Jun 2008 23:55:08 +0200
+ -- Brian Murray <email address hidden> Thu, 26 Jun 2008 13:09:35 -0700

 python-launchpad-bugs (0.2.32) intrepid; urgency=low

markus@thekorn:/tmp/new$ bzr version
Bazaar (bzr) 1.3.1
  Python interpreter: /usr/bin/python 2.5.2.final.0
  Python standard library: /usr/lib/python2.5
  bzrlib: /usr/lib/python2.5/site-packages/bzrlib
  Bazaar configuration: /home/markus/.bazaar
  Bazaar log file: /home/markus/.bzr.log

Copyright 2005, 2006, 2007, 2008 Canonical Ltd.
http://bazaar-vcs.org/

bzr comes with ABSOLUTELY NO WARRANTY. bzr is free software, and
you may use, modify and redistribute it under the terms of the GNU
General Public License version 2 or later.

Tags: merge
Revision history for this message
Markus Korn (thekorn) wrote :
Revision history for this message
John A Meinel (jameinel) wrote :

Confirmed. The revisions in play are:
main: 105 <email address hidden>
into
new: 139 <email address hidden>

My best guess is that there is a change from "main" but the target text already exists. So the part that says "what is from the source" said something changed, but it actually was a "no-op" when updating the target, because the text was already "target" at that point.

Changed in bzr:
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
John A Meinel (jameinel) wrote :

Simple test which demonstrates this behavior:

mkdir test
cd test
bzr init a
echo -e "hello\nthere\npeople" > a/file
bzr add a/file
bzr commit -m "file" a
bzr branch a b

echo -e "hello\nthere2\npeople" > a/file
bzr commit -m "2" a
echo -e "hello\nthere2\npeople\nandthensome" >b/file
bzr commit -m "more" b

cd b
bzr merge ../a

This will show:
 M file
All changes applied successfully.

and then
$ bzr st
pending merges:
  John Arbash Meinel 2008-06-26 there2

Revision history for this message
Aaron Bentley (abentley) wrote : Re: [Bug 243359] Re: bzr merge shows file as modified although they did not change

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Markus Korn wrote:
> ** Attachment added: "bzr.log.ext"
> http://launchpadlibrarian.net/15632683/bzr.log.ext

If that file needs a merge calculated, it will be marked M, even if the
output of the merge calculation is identical to the file on disk.

Not to suggest this isn't a bug, but that's the likely explanation.

Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFIZPe60F+nu1YWqI0RAqhhAJ9iYKOGRvw0OLZrBwXFl/rYjUvmfgCff5ag
FDEWaRj73rZuz/Hg7cR2kfY=
=UTEG
-----END PGP SIGNATURE-----

Martin Pool (mbp)
Changed in bzr:
status: Triaged → Confirmed
Jelmer Vernooij (jelmer)
tags: added: merge ui
tags: removed: ui
Jelmer Vernooij (jelmer)
tags: added: check-for-breezy
Jelmer Vernooij (jelmer)
tags: removed: check-for-breezy
Changed in brz:
status: New → Triaged
importance: Undecided → Low
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Bug attachments

Remote bug watches

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