[PATCH 1 of 4 V2] subrepo: add shortid() method to subrepo classes

Angel Ezquerra angel.ezquerra at gmail.com
Sat May 10 18:38:34 CDT 2014


# HG changeset patch
# User Angel Ezquerra <angel.ezquerra at gmail.com>
# Date 1399414100 -7200
#      Wed May 07 00:08:20 2014 +0200
# Node ID fbd38caed1830c15ed744fe85ee6442aaf11936f
# Parent  bcddddcf0b540b1d98f0dc1f1a1bef9337e2e567
subrepo: add shortid() method to subrepo classes

This method takes an "id" (e.g. a revision id) and returns a "short" version
(e.g. a short revision id).

This will be used on the next revision to fix a small bug in the way that the
text on the promptchoice shown when a subrepo diverges is generated.

diff --git a/mercurial/subrepo.py b/mercurial/subrepo.py
--- a/mercurial/subrepo.py
+++ b/mercurial/subrepo.py
@@ -501,6 +501,9 @@
             % (substate[0], substate[2]))
         return []
 
+    def shortid(self, revid):
+        return revid
+
 class hgsubrepo(abstractsubrepo):
     def __init__(self, ctx, path, state):
         self._path = path
@@ -866,6 +869,9 @@
             pats = []
         cmdutil.revert(ui, self._repo, ctx, parents, *pats, **opts)
 
+    def shortid(self, revid):
+        return revid[:12]
+
 class svnsubrepo(abstractsubrepo):
     def __init__(self, ctx, path, state):
         self._path = path
@@ -1561,6 +1567,9 @@
         deleted = unknown = ignored = clean = []
         return modified, added, removed, deleted, unknown, ignored, clean
 
+    def shortid(self, revid):
+        return revid[:7]
+
 types = {
     'hg': hgsubrepo,
     'svn': svnsubrepo,


More information about the Mercurial-devel mailing list