Merge with stable
authorMatt Mackall <mpm@selenic.com>
Thu, 05 Jul 2007 15:36:56 -0500
changeset 4815 5cc184800bf2
parent 4814 744371157212 (current diff)
parent 4748 8808ea7da86b (diff)
child 4816 c10d3bc05a8d
Merge with stable
tests/test-issue619
--- a/mercurial/context.py	Thu Jul 05 12:45:41 2007 -0700
+++ b/mercurial/context.py	Thu Jul 05 15:36:56 2007 -0500
@@ -40,6 +40,9 @@
         except AttributeError:
             return False
 
+    def __ne__(self, other):
+        return not (self == other)
+
     def __nonzero__(self):
         return self._rev != nullrev
 
@@ -185,6 +188,9 @@
         except AttributeError:
             return False
 
+    def __ne__(self, other):
+        return not (self == other)
+
     def filectx(self, fileid):
         '''opens an arbitrary revision of the file without
         opening a new filelog'''
--- a/mercurial/merge.py	Thu Jul 05 12:45:41 2007 -0700
+++ b/mercurial/merge.py	Thu Jul 05 15:36:56 2007 -0500
@@ -523,7 +523,7 @@
         raise util.Abort(_("outstanding uncommitted merges"))
     if pa == p1 or pa == p2: # is there a linear path from p1 to p2?
         if branchmerge:
-            if p1.branch() != p2.branch():
+            if p1.branch() != p2.branch() and pa != p2:
                 fastforward = True
             else:
                 raise util.Abort(_("there is nothing to merge, just use "
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-issue619	Thu Jul 05 15:36:56 2007 -0500
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+mkdir t
+cd t
+hg init
+echo a > a
+hg ci -Ama -d '1000000000 0'
+echo b > b
+hg branch b
+hg ci -Amb -d '1000000000 0'
+hg co -C 0
+
+echo fast-forward
+hg merge b
+hg ci -Ammerge -d '1000000000 0'
+
+echo bogus fast-forward should fail
+hg merge b
+
+echo done
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-issue619.out	Thu Jul 05 15:36:56 2007 -0500
@@ -0,0 +1,10 @@
+adding a
+marked working directory as branch b
+adding b
+0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+fast-forward
+1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+(branch merge, don't forget to commit)
+bogus fast-forward should fail
+abort: there is nothing to merge, just use 'hg update' or look at 'hg heads'
+done