Plugins/VcsPlugins/vcsMercurial/hg.py

changeset 5512
f148796813d4
parent 5503
20dd5c1e43ec
child 5514
1aa13333eb9f
--- a/Plugins/VcsPlugins/vcsMercurial/hg.py	Sat Feb 11 18:19:56 2017 +0100
+++ b/Plugins/VcsPlugins/vcsMercurial/hg.py	Sat Feb 11 19:47:41 2017 +0100
@@ -1934,17 +1934,22 @@
         self.logBrowserOutgoing.raise_()
         self.logBrowserOutgoing.start(name)
     
-    def hgPull(self, name):
+    def hgPull(self, name, revisions=None):
         """
         Public method used to pull changes from a remote Mercurial repository.
         
-        @param name directory name of the project to be pulled to (string)
+        @param name directory name of the project to be pulled to
+        @type str
+        @param revisions list of revisions to be pulled
+        @type list of str
         @return flag indicating, that the update contained an add
-            or delete (boolean)
+            or delete
+        @rtype bool
         """
         if self.getPlugin().getPreferences("PreferUnbundle") and \
            self.bundleFile and \
-           os.path.exists(self.bundleFile):
+           os.path.exists(self.bundleFile) and \
+           revisions is None:
             command = "unbundle"
             title = self.tr('Apply changegroups')
         else:
@@ -1957,6 +1962,10 @@
             args.append('--update')
         if command == "unbundle":
             args.append(self.bundleFile)
+        if revisions:
+            for rev in revisions:
+                args.append("--rev")
+                args.append(rev)
         
         # find the root of the repo
         repodir = self.splitPath(name)[0]

eric ide

mercurial