Estamos probando la conducción de Mercurial en el trabajo. No queremos tener que ingresar nuestro usuario/pase cada vez que interactuamos con un repositorio, así que configuramos la extensión mercurial_keyring. Nosotros:Las extensiones Mercurial no funcionan en Windows 7 x64?
- instalado Python 2.6.5 (32 o 64 bits, dependiendo del sistema)
- setuptools instalado (por easy_install.exe)
- llavero easy_install
- mercurial_keyring easy_install
Y luego realizó los cambios apropiados en% userprofile%/mercurial.ini en la sección [auth]
. Funciona bien en la computadora de mi colega (32bit xp sp3), pero no funciona en mi máquina (Windows 7 Ultimate x64). También es de destacar que las herramientas de instalación tuvieron que ser compiladas desde la fuente en Win 7 x64 (python setup.py bdist_wininst
), luego se ejecutaron las herramientas de configuración resultantes-0.6c11.win-amd64.exe).
Utilizando sólo hg.exe del 1,5 instalación binaria Mercurial (.msi), me sale este error cuando corro hg.exe:
*** failed to import extension mercurial_keyring: No module named mercurial_keyring
Traté de cambiar mi mercurial.ini, para especificar la ruta al archivo mercurial_keyring.py, en lugar de tener mercurial find it (ya que está en PYTHONPATH).
antigua:
[extensions]
mercurial_keyring =
Nuevo:
[extensions] mercurial_keyring =
c:/mercurial/extensions/mercurial_keyring.py
el error cambia a:
abort: could not import module keyring!
Así, mientras que proporciona la ruta de acceso a las obras de ampliación mercurial_keyring, el módulo de claves depende todavía no pudo ser encontrado.
Después de más investigaciones, parece que NO funcionan las extensiones. Todos ellos producen el error:
*** failed to import extension [extension name]: No module named [module name]
Parece que cuando se ejecuta hg.exe, no es consciente de PYTHONPATH. He tratado:
- Python 2.6.5 32 bit
- Python 2.6.5 64 bit
- Building Mercurial 1.5 de la fuente con MinGW
- Building Mercurial 1.5 de la fuente con MSVC9
- Usando hg .exe desde el 1,5 dist binario (.msi)
- Uso de la hg.py en c: \ Python26 \ scripts cuando la construcción de la fuente
- Varias configuraciones en% userprofile%/mercurial.ini
- Usando setuptools (easy_install.exe) para instalar keyring y mercurial_keyring
- Building keyring y mercurial_keyring desde el origen (configuración de python.py bdist_wininst)
Nada funciona. Lo más cercano que tengo es usar hg.py cuando construyo desde la fuente. Al menos no me da errores, y realmente crea% userprofile%/wincrypto_pass.cfg cuando ingreso mis credenciales. Pero en solicitudes posteriores, no ingresa las credenciales automáticamente. Me impulsa hacia ellos nuevamente.
Curiosamente, TortoiseHG es usando el llavero. Simplemente no puedo hacer que funcione en la línea de comando. Creo que algo está sucediendo con Win 7 x64 que impide que mercurial (hg.exe) vea el PYTHONPATH, por lo que no puede encontrar ninguno de los módulos instalados.
¿Alguien tiene extensiones que funcionen en Win 7 x64? Específicamente con la instalación binaria de mercurial (no hg.py)?
ACTUALIZACIÓN He encontrado un trabajo adecuado por el momento. Como TortoiseHG funciona con mercurial_keyring, simplemente he cambiado la configuración de PATH para incluir la carpeta tortoiseHG, pero no c: \ mercurial. Ahora cuando escribo "hg" en la línea de comandos, está usando hg.exe en la carpeta tortoiseHG, que funciona bien. De todos modos, este sigue siendo un problema con las extensiones mercuriales en Win 7 x64. Respuestas bienvenidas
'C: \ Program Files \ TortoiseHg' estaba presente en el PATH, aunque tuve que eliminar otra versión de Mercurial de él:' c: \ Program Files \ Mercurial' –