Как напечатать все комментарии TODO, которые я когда-либо добавлял или редактировал во время любого коммита git
Как я могу перечислить все комментарии TODO, которые я когда-либо добавлял или редактировал во всех коммитах проекта с версией git? Я не хочу видеть комментарии других TODO.
Вывод должен напечатать все строки, на самом деле содержащие мои комментарии TODO:
\\TODO: This should be changed to something else
\\TODO I guess the bug hides here
\\ TODO I need to do something here
Я не хочу просто перечислять коммиты как git log -S TODO
делает.
1 ответ
Если этот TODO находится в файлах (в отличие от сообщения фиксации), вы можете сделать:
git log -p --author=you -S TODO | grep "\+.*TODO"
См. Больше в разделе " Как выполнить поиск (поиск) зафиксированного кода в истории git?".-p
: для просмотра содержимого в виде патча, который позволяет выполнять поиск по строке, включая TODO.
Тем не менее, это перечисляет все TODO
когда-либо написанные комментарии, даже те, которые уже разрешены и, таким образом, снова удалены из кода.
Для получения более полного ответа см. " Как вывести список всех моих сообщений TODO в текущей базе управляемых кодов git":
git grep -l TODO | xargs -n1 git blame -f -n -w | grep "Your name" | grep TODO | sed "s/.\{9\}//" | sed "s/(.*)[[:space:]]*//"