2011-11-18 9 views
5

¿Hay alguna forma de determinar por qué un repositorio determinado tarda mucho en clonarse?¿Explicar el clon Mercurial lento?

Supongo que en algún momento agregamos algunos archivos grandes que luego eliminamos, y la descarga de este historial probablemente causa que el clon sea tan lento.

No estamos seguros de qué archivos son y si realmente podríamos (permanentemente) eliminarlos del repositorio.

¿Alguna idea?

Respuesta

0

Puedes mirar dentro de .hg/store/data y ver si hay archivos sospechosamente grandes.

+1

¿Se puede eliminar permanentemente un archivo grande si identifica uno? –

+0

@Marcus No puede eliminar archivos del directorio .hg/store, ya que los archivos están referenciados por al menos un encabezado de su repositorio. – Rudi

+0

No puede eliminarlo de los conjuntos de cambios existentes, pero puede modificar el historial si realmente necesita deshacerse de él. – Ringding

4

no se puede alterar el historial de repos pero se puede crear un nuevo repositorio con historial selectivo utilizando hg convert, pero esto requerirá que todos cambien al nuevo repo que puede o no ser un problema para usted dependiendo de cómo se ejecuta el proyecto.

utilizar hg convertir un archivo de despojar a crear un archivo filemap con el siguiente contenido

exclude path/to/really/big/file 

continuación, ejecute el comando

hg convert --filemap filemap oldrepo newrepo 

Si usted no ha tenido muchos lo elimina es posible que pueda para encontrarlo con:

hg log --template "{file_dels} " 

que mostrará todos los archivos deletreé ed para todos los commits

Cuestiones relacionadas