Как вы удаляете большие файлы из истории в Mercurial?
Я только что создал ртутный репо, созданный из разнородных экосистем других репо. Прежде чем я опубликую это своим коллегам, я хочу почистить как можно больше. С этой целью я хотел бы полностью удалить несколько больших старых файлов из истории (притвориться, что их никогда не было), поэтому репо будет меньше.
Это возможно с ртутью?
1 ответ
Решение
Проверьте convert
расширение, особенно --filemap
вариант.
Включить, добавив следующее в mercurial.ini
:
[extensions]
convert =
Создайте карту файлов для исключения:
exclude path/to/file1
exclude path/to/file2
Затем конвертируем репо:
hg convert srcrepo destrepo --filemap <map>
Обратите внимание, что в Mercurial 2.1.1 есть ошибка, вызывающая ошибку с помощью приведенной выше команды:
initializing destination destrepo repository
abort: invalid mode ('r') or filename
Просто добавьте --splicemap <nonexistent file>
возможность исправить проблему.