[PATCH] update comment and documentation for :/foo syntax
From: Matthieu Moy <hidden>
Date: 2016-06-15 22:49:36
Subsystem:
documentation, the rest · Maintainers:
Jonathan Corbet, Linus Torvalds
The documentation in revisions.txt did not match the implementation, and the comment in sha1_name.c was incomplete. Signed-off-by: Matthieu Moy <redacted> --- Junio wrote:
Isn't it "a randomly chosen recent commit whose subject contains regexp foo" these days?
So, that's right. Here's an updated version. I've kept the comment short and vague, to avoid duplicating the doc, it should be sufficient as a reminder. Documentation/revisions.txt | 4 +++- sha1_name.c | 1 + 2 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/Documentation/revisions.txt b/Documentation/revisions.txt
index fe846f0..3d4b79c 100644
--- a/Documentation/revisions.txt
+++ b/Documentation/revisions.txt@@ -107,11 +107,13 @@ the `$GIT_DIR/refs` directory or from the `$GIT_DIR/packed-refs` file. found. * A colon, followed by a slash, followed by a text (e.g. `:/fix nasty bug`): this names - a commit whose commit message starts with the specified text. + a commit whose commit message matches the specified regular expression. This name returns the youngest matching commit which is reachable from any ref. If the commit message starts with a '!', you have to repeat that; the special sequence ':/!', followed by something else than '!' is reserved for now. + The regular expression can match any part of the commit message. To + match messages starting with a string, one can use e.g. `:/^foo`. * A suffix ':' followed by a path (e.g. `HEAD:README`); this names the blob or tree at the given path in the tree-ish object named by the part
diff --git a/sha1_name.c b/sha1_name.c
index 5470a69..ba95a79 100644
--- a/sha1_name.c
+++ b/sha1_name.c@@ -1062,6 +1062,7 @@ int get_sha1_with_context_1(const char *name, unsigned char *sha1, /* sha1:path --> object name of path in ent sha1 * :path -> object name of path in index * :[0-3]:path -> object name of path in index at stage + * :/foo -> recent commit matching foo */ if (name[0] == ':') { int stage = 0;
--
1.7.3.2.g257b5f