Как в Git показать файлы, которые меняются чаще всего?
105
вы можете использовать команду git effort
(из git-extras
пакета), которая показывает статистику о количестве коммитов для каждого файла (по коммитам и активным дням).
РЕДАКТИРОВАТЬ: git усилия - это просто сценарий bash, который вы можете найти здесь и адаптировать к своим потребностям, если вам нужно что-то более особенное.
git help effort
не имеет об этом информации: /). Я предполагаю, что первый набор результатов упорядочен по имени файла, а второй - по количеству фиксации для каждого файла. На страницеВы можете сделать что-то вроде следующего:
Журнал просто выводит имена файлов, которые были изменены в каждой фиксации, в то время как остальная часть просто сортирует и выводит 10 наиболее часто встречающихся имен файлов.
источник
--branches
в,git log
если хотите включить коммиты в любую из ваших локальных веток.--since "1 month ago"
или другие параметры для сужения временного окнаgit log --pretty=format: --since="1 year ago" --name-only -- "*.java" | sort | uniq -c | sort -rg | head -10
Я заметил, что ответы Марка и Сехе не относятся
--follow
к файлам, то есть они останавливаются, как только они достигают переименования файла. Этот сценарий будет работать намного медленнее, но для этого подойдет.git-most.sh
источник
roles
каталоге для моего случая, но легко модифицируется в соответствии с вашим вариантом использования.Для powershell, если у вас установлен git bash
источник
Это версия для Windows
затем откройте в Excel
создать сводную таблицу
источник
Если вы хотите только, чтобы ваши файлы добавлялись
--author
вgit whatchanged --author=name --all
.источник
Старый вопрос, но я думаю, что это очень полезный вопрос. Вот рабочий пример в формате PowerShell. Это позволит получить 10 самых изменяемых файлов в вашем репо относительно ветки, в которой вы находитесь.
источник
Мы также можем узнать файлы, измененные между двумя коммитами или ветвями, например
источник
Это, вероятно, очевидно, но предоставленные запросы будут отображать все файлы, но, возможно, вам не интересно знать, что ваши файлы конфигурации или проекта являются наиболее обновленными. Простой grep изолирует ваши файлы кода, например:
источник