удалить файлы в истории, чтобы сэкономить место в Mercurial - PullRequest
13 голосов
/ 13 октября 2010

Хорошо, когда я был маленьким, я помещал в свои ртутные репозитории несколько больших файлов (например, файл ресурсов, DLL и т. и я обнаружил, что его размер настолько велик, что я не могу легко вставить его в bitbucket,

любой способ удалить историю файлов ЛЕГКО ?

Я поместил все эти файлы в пути / res и / dll.

редактирование:

это решение, но оно удалит часть истории, так что, возможно, есть лучшее решение. Mercurial Удалить историю

1 Ответ

18 голосов
/ 13 октября 2010

Лучше всего использовать расширение для конвертации, но предупреждение в итоге вы получите совершенно другое репо. Каждый хеш будет отличаться, и каждому клонированному человеку нужно будет удалить свой клон и повторно клонировать.

Тем не менее, вот что вы делаете:

Создайте файл карты с именем filemap.txt, содержащий:

exclude res
exclude dll

и затем выполните эту команду:

hg convert --filemap filemap.txt your-source-repository your-destination-repository

Например:

hg convert --filemap filemap.txt /home/you/repos/bloatedrepo /home/you/repos/slenderrepo

Это дает вам совершенно новый репо, в котором есть вся ваша история, за исключением истории любых файлов в / res и / dll, но опять же, это будет новый, не связанный репозиторий, поскольку это касается mercurial (и bitbucket).

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