[PATCH] subrepos: print short git changeset ids

Kevin Bullock kbullock+mercurial at ringworld.org
Wed Feb 16 11:56:30 CST 2011


# HG changeset patch
# User Kevin Bullock <kbullock at ringworld.org>
# Date 1297878828 21600
# Node ID 913eefa8af91dc190144d4315257f7d0d9edbff8
# Parent  eba7b4b1766fcc9e84fad5f53ae6931a82036e89
subrepos: print short git changeset ids

This changes the prompts on git subrepos to show only the first seven
digits of git changeset IDs (as git's command line does):

    $ hg update
    subrepository sources for s differ (in checked out version)
    use (l)ocal source (32a3438) or (r)emote source (da5f5b1)?

diff --git a/mercurial/subrepo.py b/mercurial/subrepo.py
--- a/mercurial/subrepo.py
+++ b/mercurial/subrepo.py
@@ -886,7 +886,7 @@
         if self.dirty():
             if self._gitstate() != revision:
                 dirty = self._gitstate() == self._state[1] or code != 0
-                if _updateprompt(self._ui, self, dirty, self._state[1], revision):
+                if _updateprompt(self._ui, self, dirty, self._state[1][:7], revision[:7]):
                     mergefunc()
         else:
             mergefunc()
diff --git a/tests/test-subrepo-git.t b/tests/test-subrepo-git.t
--- a/tests/test-subrepo-git.t
+++ b/tests/test-subrepo-git.t
@@ -359,7 +359,7 @@
   $ cd ..
   $ hg update 4
    subrepository sources for s differ
-  use (l)ocal source (da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7) or (r)emote source (aa84837ccfbdfedcdcdeeedc309d73e6eb069edc)?
+  use (l)ocal source (da5f5b1) or (r)emote source (aa84837)?
    l
   0 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg id -n
@@ -384,7 +384,7 @@
   $ cd ..
   $ hg update 1
    subrepository sources for s differ (in checked out version)
-  use (l)ocal source (32a343883b74769118bb1d3b4b1fbf9156f4dddc) or (r)emote source (da5f5b1d8ffcf62fb8327bcd3c89a4367a6018e7)?
+  use (l)ocal source (32a3438) or (r)emote source (da5f5b1)?
    l
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg id -n
@@ -405,7 +405,7 @@
   1+
   $ hg update 7
    subrepository sources for s differ
-  use (l)ocal source (32a343883b74769118bb1d3b4b1fbf9156f4dddc) or (r)emote source (32a343883b74769118bb1d3b4b1fbf9156f4dddc)?
+  use (l)ocal source (32a3438) or (r)emote source (32a3438)?
    l
   1 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ hg id -n


More information about the Mercurial-devel mailing list