Merge into new branch produces strange log

Bug #415936 reported by David Strauss
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
New
Undecided
Unassigned

Bug Description

Merging from an existing branch into a new one produces unusual log effects.

Curium:merge2new straussd$ bzr init-repo --1.14-rich-root .
Shared repository with trees (format: 1.14-rich-root or 1.9-rich-root)
Location:
  shared repository: .
Curium:merge2new straussd$ bzr init old
Created a repository tree (format: unnamed)
Using shared repository: /Users/straussd/Sandbox/merge2new/
Curium:merge2new straussd$ cd old/
Curium:old straussd$ touch a
Curium:old straussd$ bzr add
adding a
Curium:old straussd$ bzr commit -m"a"
Committing to: /Users/straussd/Sandbox/merge2new/old/
added a
Committed revision 1.
Curium:old straussd$ touch b
Curium:old straussd$ bzr add
adding b
Curium:old straussd$ bzr commit -m"b"
Committing to: /Users/straussd/Sandbox/merge2new/old/
added b
Committed revision 2.
Curium:old straussd$ cd ..
Curium:merge2new straussd$ bzr init new
Created a repository tree (format: unnamed)
Using shared repository: /Users/straussd/Sandbox/merge2new/
Curium:merge2new straussd$ cd new/
Curium:new straussd$ bzr merge ../old/
+N a
+N b
All changes applied successfully.
Curium:new straussd$ bzr commit -m"Merge from old."
Committing to: /Users/straussd/Sandbox/merge2new/new/
deleted
modified a
modified b
Committed revision 1.
Curium:new straussd$ bzr log
------------------------------------------------------------
revno: 1
committer: David Strauss <david@foobar>
branch nick: new
timestamp: Wed 2009-08-19 13:56:49 +0000
message:
  Merge from old.
------------------------------------------------------------
revno: 0
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:23 +0000
message:
  b
------------------------------------------------------------
revno: -1
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:13 +0000
message:
  a
Curium:new straussd$ bzr log --include-merges
------------------------------------------------------------
revno: 3
committer: David Strauss <david@foobar>
branch nick: new
timestamp: Wed 2009-08-19 13:56:49 +0000
message:
  Merge from old.
------------------------------------------------------------
revno: 2
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:23 +0000
message:
  b
------------------------------------------------------------
revno: 1
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:13 +0000
message:
  a
Curium:new straussd$ touch c
Curium:new straussd$ bzr add
adding c
Curium:new straussd$ bzr commit -m"c"
Committing to: /Users/straussd/Sandbox/merge2new/new/
added c
Committed revision 2.
Curium:new straussd$ bzr log
------------------------------------------------------------
revno: 2
committer: David Strauss <david@foobar>
branch nick: new
timestamp: Wed 2009-08-19 13:59:02 +0000
message:
  c
------------------------------------------------------------
revno: 1
committer: David Strauss <david@foobar>
branch nick: new
timestamp: Wed 2009-08-19 13:56:49 +0000
message:
  Merge from old.
------------------------------------------------------------
revno: 0
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:23 +0000
message:
  b
------------------------------------------------------------
revno: -1
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:13 +0000
message:
  a
Curium:new straussd$ bzr log --include-merges
------------------------------------------------------------
revno: 4
committer: David Strauss <david@foobar>
branch nick: new
timestamp: Wed 2009-08-19 13:59:02 +0000
message:
  c
------------------------------------------------------------
revno: 3
committer: David Strauss <david@foobar>
branch nick: new
timestamp: Wed 2009-08-19 13:56:49 +0000
message:
  Merge from old.
------------------------------------------------------------
revno: 2
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:23 +0000
message:
  b
------------------------------------------------------------
revno: 1
committer: David Strauss <david@foobar>
branch nick: old
timestamp: Wed 2009-08-19 13:56:13 +0000
message:
  a
Curium:new straussd$

Revision history for this message
David Strauss (davidstrauss) wrote :

And my version:

Curium:new straussd$ bzr version
Bazaar (bzr) 1.17
  Python interpreter: /System/Library/Frameworks/Python.framework/Versions/2.5/Resources/Python.app/Contents/MacOS/Python 2.5.1
  Python standard library: /System/Library/Frameworks/Python.framework/Versions/2.5/lib/python2.5
  bzrlib: /Library/Python/2.5/site-packages/bzrlib
  Bazaar configuration: /Users/straussd/.bazaar
  Bazaar log file: /Users/straussd/.bzr.log

Copyright 2005, 2006, 2007, 2008, 2009 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.

Revision history for this message
David Strauss (davidstrauss) wrote :
Download full text (3.5 KiB)

And a walkthrough with the default repo format:

Curium:415936 straussd$ bzr init-repo
bzr: ERROR: command 'init-repository' requires argument LOCATION
Curium:415936 straussd$ bzr init-repo .
Shared repository with trees (format: pack-0.92)
Location:
  shared repository: .
Curium:415936 straussd$ bzr init old
Created a repository tree (format: pack-0.92)
Using shared repository: /Users/straussd/Sandbox/415936/
Curium:415936 straussd$ cd old/
Curium:old straussd$ touch a
Curium:old straussd$ bzr add
adding a
Curium:old straussd$ bzr commit -m"a"
Committing to: /Users/straussd/Sandbox/415936/old/
added a
Committed revision 1.
Curium:old straussd$ touch b
Curium:old straussd$ bzr add
adding b
Curium:old straussd$ bzr commit -m"b"
Committing to: /Users/straussd/Sandbox/415936/old/
added b
Committed revision 2.
Curium:old straussd$ cd ..
Curium:415936 straussd$ bzr init new
Created a repository tree (format: pack-0.92)
Using shared repository: /Users/straussd/Sandbox/415936/
Curium:415936 straussd$ cd new
Curium:new straussd$ bzr merge ../old/
+N a
+N b
All changes applied successfully.
Curium:new straussd$ bzr commit -m"Merge from old."
Committing to: /Users/straussd/Sandbox/415936/new/
aborting commit write group: PointlessCommit(No changes to commit)
bzr: ERROR: No changes to commit. Use --unchanged to commit anyhow.
Curium:new straussd$ bzr stat
working tree is out of date, run 'bzr update'
Curium:new straussd$ bzr up
-D a
-D b
All changes applied successfully.
bzr: ERROR: Reserved revision-id {null:}
Curium:new straussd$ bzr log
Curium:new straussd$ touch c
Curium:new straussd$ bzr add
adding c
Curium:new straussd$ bzr commit -m"c"
Committing to: /Users/straussd/Sandbox/415936/new/
deleted a
deleted b
added c
Committed revision 1.
Curium:new straussd$ bzr log
------------------------------------------------------------
revno: 1
committer: David Strauss <email address hidden>
branch nick: new
timestamp: Wed 2009-08-19 15:42:13 +0000
message:
  c
------------------------------------------------------------
revno: 0
committer: David Strauss <email address hidden>
branch nick: old
timestamp: Wed 2009-08-19 15:39:50 +0000
message:
  b
------------------------------------------------------------
revno: -1
committer: David Strauss <email address hidden>
branch nick: old
timestamp: Wed 2009-08-19 15:39:40 +0000
message:
  a
Curium:new straussd$
Curium:new straussd$ bzr log --include-merges
------------------------------------------------------------
revno: 3
committer: David Strauss <email address hidden>
branch nick: new
timestamp: Wed 2009-08-19 15:...

Read more...

Revision history for this message
Martin Pool (mbp) wrote :

I think this is a dupe of bug 82555?

Revision history for this message
David Strauss (davidstrauss) wrote :

@Martin Seems to be the case, but I think the documentation on reproduction is better here on my bug.

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.