grep: restore pre-
9ef10437bb88 behavior, enable wdir search by tweakdefaults
Unfortunately, python-hglib relies on the original grep behavior and is
documented as such. Even though we agreed to introduce the BC, we shouldn't
break existing libraries.
So this patch flips the default again and move the new default to
ui.tweakdefaults. We could instead use HGPLAIN to turn this flag off, but
that would be rather confusing as the old/new behaviors are quite different.
Differential Revision: https://phab.mercurial-scm.org/D3919
--- a/mercurial/commands.py Wed Jul 11 21:51:47 2018 +0900
+++ b/mercurial/commands.py Wed Jul 11 22:06:04 2018 +0900
@@ -2515,12 +2515,11 @@
Search revision history for a regular expression in the specified
files or the entire project.
- By default, grep searches the expression on the working directory.
- To search history and show the most recent revision number for each
- file in which it finds a match, use :hg:`grep -r tip:0`.
- To get it to print every revision that contains a change in match status
- ("-" for a match that becomes a non-match, or "+" for a non-match that
- becomes a match), use the --diff flag.
+ By default, grep prints the most recent revision number for each
+ file in which it finds a match. To get it to print every revision
+ that contains a change in match status ("-" for a match that becomes
+ a non-match, or "+" for a non-match that becomes a match), use the
+ --diff flag.
PATTERN can be any Python (roughly Perl-compatible) regular
expression.
--- a/mercurial/configitems.py Wed Jul 11 21:51:47 2018 +0900
+++ b/mercurial/configitems.py Wed Jul 11 22:06:04 2018 +0900
@@ -188,7 +188,7 @@
default=dynamicdefault,
)
coreconfigitem('commands', 'grep.all-files',
- default=True,
+ default=False,
)
coreconfigitem('commands', 'show.aliasprefix',
default=list,
--- a/mercurial/ui.py Wed Jul 11 21:51:47 2018 +0900
+++ b/mercurial/ui.py Wed Jul 11 22:06:04 2018 +0900
@@ -59,6 +59,8 @@
interface = curses
[commands]
+# Grep working directory by default.
+grep.all-files = True
# Make `hg status` emit cwd-relative paths by default.
status.relative = yes
# Refuse to perform an `hg update` that would cause a file content merge
--- a/tests/test-grep.t Wed Jul 11 21:51:47 2018 +0900
+++ b/tests/test-grep.t Wed Jul 11 22:06:04 2018 +0900
@@ -456,10 +456,15 @@
$ cd ..
-Change Default of grep, that is, the files not in current working directory
-should not be grepp-ed on
+Change Default of grep by ui.tweakdefaults, that is, the files not in current
+working directory should not be grepp-ed on
+
$ hg init ab
$ cd ab
+ $ cat <<'EOF' >> .hg/hgrc
+ > [ui]
+ > tweakdefaults = True
+ > EOF
$ echo "some text">>file1
$ hg add file1
$ hg commit -m "adds file1"