Удалить каждый коммит с сообщением, которое содержит строку или соответствует регулярному выражению - PullRequest
0 голосов
/ 18 апреля 2019

Я собираюсь раскошелиться и вскоре поработать над проектом под названием tweakCompatible.Однако из-за того, как это работает, история коммитов git действительно длинная, и существует более 84000 закрытых проблем (4 ноля), и коммиты их «исправляют».Вы можете найти репозиторий здесь: tweakCompatible на Github

Как я могу удалить эти коммиты, проблемы и их изменения из репозитория?

Ответы [ 2 ]

1 голос
/ 18 апреля 2019
git filter-branch --commit-filter '
    if [ `git rev-list --all --grep "<log-pattern>" | grep -c "$GIT_COMMIT"` -gt 0 ]
    then
        skip_commit "$@";
    else
        git commit-tree "$@";
    fi'  HEAD

Источник

0 голосов
/ 18 апреля 2019

Используйте Мелкий клон хранилища:

git clone --depth 1 <repo_url>

Это только клонирует коммит HEAD с удаленного компьютера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...