Mercurial > hg
changeset 31589:7e3b145f8247
status: support commands.status.relative config
When the config is set to true, status output becomes relative to the
working directory. This has bugged me since I started using hg and it
turns it is sillily simple to support it (unless I missed something,
of course).
We could also add a --relative flag, but I would personally always
want that on, and I haven't heard any use for having it sometimes on,
so this patch only lets you enable it via config.
author | Martin von Zweigbergk <martinvonz@google.com> |
---|---|
date | Tue, 21 Mar 2017 17:50:44 -0700 |
parents | 37a0ad669051 |
children | 78ac8acfc4bd |
files | mercurial/commands.py mercurial/help/config.txt tests/test-status.t |
diffstat | 3 files changed, 26 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/commands.py Tue Mar 21 21:26:52 2017 -0700 +++ b/mercurial/commands.py Tue Mar 21 17:50:44 2017 -0700 @@ -4734,7 +4734,7 @@ else: node1, node2 = scmutil.revpair(repo, revs) - if pats: + if pats or ui.configbool('commands', 'status.relative'): cwd = repo.getcwd() else: cwd = ''
--- a/mercurial/help/config.txt Tue Mar 21 21:26:52 2017 -0700 +++ b/mercurial/help/config.txt Tue Mar 21 17:50:44 2017 -0700 @@ -417,6 +417,10 @@ ``commands`` ---------- +``status.relative`` + Make paths in ``hg status`` output relative to the current directory. + (default: False) + ``update.requiredest`` Require that the user pass a destination when running ``hg update``. For example, ``hg update .::`` will be allowed, but a plain ``hg update``
--- a/tests/test-status.t Tue Mar 21 21:26:52 2017 -0700 +++ b/tests/test-status.t Tue Mar 21 17:50:44 2017 -0700 @@ -107,6 +107,27 @@ ? a/in_a ? b/in_b +relative paths can be requested + + $ cat >> $HGRCPATH <<EOF + > [commands] + > status.relative = True + > EOF + $ hg status --cwd a + ? 1/in_a_1 + ? in_a + ? ../b/1/in_b_1 + ? ../b/2/in_b_2 + ? ../b/in_b + ? ../in_root + $ HGPLAIN=1 hg status --cwd a + ? a/1/in_a_1 + ? a/in_a + ? b/1/in_b_1 + ? b/2/in_b_2 + ? b/in_b + ? in_root + $ cd .. $ hg init repo2