software control version-control mercurial dvcs

version control - control - ¿Cómo se eliminan los archivos grandes de la historia en mercurial?



mercurial software version control (1)

Acabo de crear un repositorio mercurial creado a partir de un ecosistema heterogéneo de otros repositorios. Antes de publicarlo en mis compañeros de trabajo, quiero limpiarlo tanto como sea posible. Para este fin, me gustaría eliminar por completo unos pocos archivos antiguos de la historia (pretender que nunca existieron), por lo que el repositorio será más pequeño.

¿Es esto posible con mercurial?


Mira la extensión de convert , particularmente la opción --filemap .

Habilítelo agregando lo siguiente a mercurial.ini :

[extensions] convert =

Crea un mapa de archivos para excluir:

exclude path/to/file1 exclude path/to/file2

A continuación, convierta el repositorio:

hg convert srcrepo destrepo --filemap <map>

Tenga en cuenta que hay un error en Mercurial 2.1.1 que causa un error con el comando anterior:

initializing destination destrepo repository abort: invalid mode (''r'') or filename

Simplemente agregue la --splicemap <nonexistent file> para solucionar el problema.