Какую команду я могу запустить в моем Windows Git Bash, которая покажет мне имена файлов, предварительный просмотр (контекст) и номера строк всех мест, где в моем коде написано «TODO», ограничено новые файлы и измененные файлы?
неадекватный подход 1 (из здесь )
Это неуклюжий и не печатает номер строки:
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 (из здесь )
Это намного лучше (показывает контекст и включает в себя новые файлы и измененные файлы), но все еще не печатаетномера строк:
grep -s "TODO" $(git ls-files -m)