python - Error mercurial*** no se pudo importar la extensión hggit: no hay un módulo llamado hggit
macos hg-git (5)
Instalé Mercurial en mi Mac, y es maravilloso. Para mí es más fácil de entender que Git, así que quería usarlo para administrar los repositorios de git. Por lo tanto instalé hg-git con las siguientes instrucciones:
Pero cada vez que emito un comando hg devuelve este mensaje de error:
Mercurial error *** failed to import extension hggit: No module named hggit
Podría ser importante tener en cuenta que estoy en una Mac, no en una PC con Windows.
¿Alguien sabe como resolver esto?
Después de instalar hg-git con el siguiente comando:
easy_install hg-git
¿Funciona lo siguiente?
python -c "import hggit"
¿Qué dice esto para ti?
head -n1 `which hg`
El punto de este último comando es verificar que Python hg se ejecute en hggit instalado. En mi caso dice "#! / Usr / bin / python", que es mi comando estándar de python.
Qué dice esto:
/opt/local/Library/Frameworks/Python.framework/Versions/2.6/Resources/Python.app/Contents/MacOS/Python -c "import hggit"
Instalé Python y TortoiseHg por:
brew cask install python
brew cask install tortoisehg
Después de la instalación siguiente
sudo easy_install hg-git
Experimenté problemas similares ( TortoiseHg: no se pudo importar la extensión hggit: No hay un módulo llamado hggit y así sucesivamente ... ) y finalmente encontré una solución para mi TortoiseHg en mac ( primero desinstale el último hg-git por sudo pip uninstall hg-git
):
sudo pip install mercurial
sudo pip install hg-git
Después de la instalación con pip y agregando marcadores a todas las sucursales importantes, por ejemplo ...
hg bookmark -r default master
hg bookmark -r branchename bookmarkname
... podría empujar el repositorio HG a Git:
hg push git+ssh://[email protected]/reponame.git --traceback
Nota: utilizar ssh! - causa menos problemas con grandes repositorios
Nota 2: --traceback te informa sobre problemas
Nota para los usuarios de ubuntu que instalan el paquete "mercurial-git" para obtener el módulo hggit el 12.04, una chispa brillante cambió el nombre del módulo al azar como "git", por lo que debe cambiar su ~ / .hgrc para que se parezca a
[extensions]
hgext.bookmarks =
git =
También obtuve este error, incluso después de descargar la última versión de Tortoisehg y asegurarme de que se instaló el complemento hggit, así como de que los archivos .ini y hgrc tenían la entrada correcta para habilitar hggit.
Resulta que mi problema era que tenía mercurial y tortuga en mi camino. Entonces, cuando ejecuté cualquier comando hg, estaba usando hg.exe en la carpeta comercial en lugar de hg.exe en el directorio torsoisehg.
Esto tiene sentido, pero mi instalación mercurial no tenía los complementos. Mi solución fue eliminar mercurial de mi ruta para que los comandos hg pasen por el directorio tortoisehg, ya que tiene hg completamente empaquetado. Sin embargo, tenga en cuenta que la opción recomendada podría ser actualizar mercurual a una versión que tenga los complementos que uno necesita, pero esto es lo que me funcionó. Intenté reemplazar la biblioteca.zip en mercurial con la de tortoisehg y esto funcionó, pero dio lugar a otros errores como uno podría imaginar.
Tuve el mismo problema, y encontré que la instalación de hg-git y dulwich a través de easy_install funcionó si usaba la opción --user
. Esto instaló el paquete en ~/Library/Python/2.7/lib/python/site-packages
.
Para ver dónde esta opción instalará un paquete en su máquina, ejecute easy_install --help
. En la documentación de la opción --user
, se muestra el directorio de instalación que se utilizará.