【发布时间】:2019-03-08 02:38:29
【问题描述】:
我可以在我的 Windows Git Bash 中运行什么命令,它将向我显示文件名、行预览(上下文)和我的代码中写有“TODO”的所有地方的行号,仅限于 新的文件和修改的文件?
方法1不足(来自here)
这很笨重并且不打印行号:
function __greptodo {
QUERY="TODO"
for FILE in `git diff --name-only`; do
grep "$QUERY" $FILE 2>&1 >/dev/null
if [ $? -eq 0 ]; then
echo '———————————————'
echo $FILE 'contains' $QUERY
grep "$QUERY" $FILE 2>&1
fi
done
}
alias greptodo=__greptodo
方法2不足(来自here)
这要好得多(显示上下文并包括新文件和修改后的文件),但仍然不打印行号:
grep -s "TODO" $(git ls-files -m)
【问题讨论】: