当我在分支上工作时,我想快速跳转到我的“TODO”评论。这意味着
我知道两个部分解决方案:git grep TODO
具有正确的格式(将 grep.lineNumber 设置为 true),但结果太多。 git diff master... | grep TODO
是一组很好的结果,但不显示文件和行号。
是否有一个选项可以告诉git diff
每个更改的行添加文件名和行号前缀?(--line-prefix
看起来很有希望,但似乎只需要一个固定的字符串。)
我可以通过--new-line-format=":%dn: %L"
(diff - 输出行号)吗git diff
?
例如,目前我的搜索结果如下所示:
$ git diff master... | grep TODO
+ // TODO use a non-fatal assertion
+ // TODO use a non-fatal assertion
+// TODO make this conditional too
Run Code Online (Sandbox Code Playgroud)
但理想情况下我想要这样:
src/foo/abc.cpp:221:+ // TODO use a non-fatal assertion
src/foo/xyz.cpp:934:+ // TODO use a non-fatal assertion
src/foo/util/extra.h:49:+// TODO make this conditional too
Run Code Online (Sandbox Code Playgroud)
可以使用patch
git log的方式:
git log -p
# Hit '/' for search mode.
# Type TODO
# Then hit 'n' for next
Run Code Online (Sandbox Code Playgroud)
要限制您的分支,您可以添加firstcommit...HEAD