La secuencia de commands Python causa error de git publickey cuando no se ejecuta en IDLE

En Windows 7 64 bits instalé Python 2.7, no tengo elección sobre qué versión usar.

He usado IDLE para escribir un script y cuando presiono F5 para ejecutar el script todo funciona como se esperaba.

Sin embargo, si hago doble clic en el file de Python desde dentro del explorador o uso Py2Exe para convertirlo en un ejecutable, el script falla.

Esta es la parte que arruina:

print subprocess.check_output(["git", "pull", "origin", "master"], shell=False) 

Sigo recibiendo el error de git:

 Permission denied (publickey). Fatal: the remote end hung up unexpectedly. 

Como dije, si abro el script en IDLE y corro desde allí, funciona un hechizo. He comparado la salida de os.environ de ambos entornos y la salida de:

 print subprocess.check_output(["ENV"], shell=False) 

No puedo ver diferencias relacionadas con git en particular y paths en general. ¡Estoy perplejo!

PD. Si tienes un git repo y python instalados y un momento para ayudarme, por favor coloca el siguiente código en un file en tu git repo:

 import sys, subprocess try: print "pulling from github" print subprocess.check_output(["git", "pull", "origin", "master"], shell=False) except: print "Failed" print sys.exc_info()[0] raw_input("Any key to exit.") sys.exit(0) 

Haga clic derecho en el file y select "Editar con IDLE" y presione F5. Luego intente hacer doble clic en el file .py directamente … ¿Qué sucede para ustedes?

Intenta ejecutar el script de python en cmd, asegúrate de que el cmd se esté ejecutando con privilegios de administrador. Si esto funciona, intente ejecutarlo desde el explorador con el mouse, haga clic derecho-> ejecutar como administrador, o en las properties de python.exe en la pestaña Compatibilidad, marque la checkbox "Ejecutar este progtwig como administrador".