2009-08-07 11 views
7

Estoy usando Mercurial en Windows XP (utilizando la distribución TortoiseHg) y quiero usar enlaces duros NTFS al clonar un repositorio. Fuera de la caja Mercurial no hace esto. He leído que se necesita habilitar una extensión de Win32File Python. Hasta ahora no he tenido éxito en hacer que esto funcione (agregar una entrada win32file a la sección de extensiones en mercurial.ini no parece funcionar). ¿Hay una manera simple de habilitarlo?Uso de enlaces duros al clonar un repositorio de Mercurial en Windows

+0

No sé la respuesta, pero tengo curiosidad sobre lo que está tratando de lograr. ¿Puedes elaborar? – Arkady

+0

Estoy tratando de mejorar el rendimiento de clonar un repositorio. Como los enlaces físicos solo aumentan el recuento de referencias de un archivo, la clonación de un repositorio se convierte en una operación bastante barata en términos de espacio en disco y tiempo de creación. –

+1

@Mike Thompson: Me perdiste allí. Si usas enlaces duros para clonar repositorios, entonces un cambio en uno de los archivos en un repositorio también afectará a todos los demás repositorios. ¿Cuál es el truco? –

Respuesta

0

Creo que necesitarás instalar Python completo y utilizar la instalación de fuente Mercurial. Aunque la instalación de Mercurial compilada por py2exe de TortiseHG puede cargar extensiones mercuriales muy bien, entiendo que no le permitirá cambiar los módulos de núcleo de Python.

+0

¿Qué quiere decir con "Python completo"? ¿Funciona ActivePython, o necesitamos descargar la fuente de Python, compilar e instalar de esa manera? ActivePython viene con win32file y veo la función CreateHardLink en esa biblioteca. –

+0

Además, UpgradeNotes en Mercurial wiki dice: "0.7: Clonación de Windows Hardlink: a partir de 0.7, la clonación de hardlink ahora es compatible con Windows NTFS y ActiveState Python. Las versiones antiguas no pueden determinar correctamente el recuento de enlaces de archivos enlazados, usando versiones antiguas de Mercurial en un nuevo repositorio que contiene enlaces duros puede ser peligroso ". Entonces, si uno tiene una versión> 0.7, debería estar bien. –

Cuestiones relacionadas