Plugins/VcsPlugins/vcsMercurial/hg.py

changeset 5496
d157a2319073
parent 5452
9f89364d9ffd
child 5501
59ed7b2dd952
--- a/Plugins/VcsPlugins/vcsMercurial/hg.py	Wed Feb 08 19:12:36 2017 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/hg.py	Wed Feb 08 19:24:21 2017 +0100
@@ -1010,11 +1010,14 @@
         
         return res
     
-    def vcsMerge(self, name):
+    def vcsMerge(self, name, rev=""):
         """
         Public method used to merge a URL/revision into the local project.
         
-        @param name file/directory name to be merged (string)
+        @param name file/directory name to be merged
+        @type str
+        @keyparam rev revision to merge with
+        @type str
         """
         dname, fname = self.splitPath(name)
         
@@ -1025,14 +1028,17 @@
             if os.path.splitdrive(repodir)[1] == os.sep:
                 return
         
-        from .HgMergeDialog import HgMergeDialog
-        dlg = HgMergeDialog(self.hgGetTagsList(repodir),
-                            self.hgGetBranchesList(repodir),
-                            self.hgGetBookmarksList(repodir))
-        if dlg.exec_() == QDialog.Accepted:
-            rev, force = dlg.getParameters()
+        if not rev:
+            from .HgMergeDialog import HgMergeDialog
+            dlg = HgMergeDialog(self.hgGetTagsList(repodir),
+                                self.hgGetBranchesList(repodir),
+                                self.hgGetBookmarksList(repodir))
+            if dlg.exec_() == QDialog.Accepted:
+                rev, force = dlg.getParameters()
+            else:
+                return
         else:
-            return
+            force = False
         
         args = self.initCommand("merge")
         if force:

eric ide

mercurial