He intentado importar una ruta de acceso de depósito p4 a git utilizando la secuencia de comandos python git-p4. Después de configurar mi entorno (Git 1.7.1, Python 2.7, Windwos XP, las variables p4 env) que trató de correr la secuencia de comandos git-p4, geetting la siguiente ouptut:no se ha podido importar con git-p4 en Windows
F:\gitp4>c:\Python27\python.exe git-p4.py clone --destination=master //depot/quake/main/[email protected]
Reading pipe: git config git-p4.syncFromOrigin
Importing from //depot/quake/main/[email protected] into master
Initialized empty Git repository in F:/gitp4/master/.git/
Traceback (most recent call last):
File "git-p4.py", line 1926, in <module>
main()
File "git-p4.py", line 1921, in main
if not cmd.run(args):
File "git-p4.py", line 1798, in run
if not P4Sync.run(self, depotPaths):
File "git-p4.py", line 1501, in run
self.hasOrigin = originP4BranchesExist()
File "git-p4.py", line 439, in originP4BranchesExist
return gitBranchExists("origin") or gitBranchExists("origin/p4") or gitBranchExists("origin/p4/master")
File "git-p4.py", line 332, in gitBranchExists
stderr=subprocess.PIPE, stdout=subprocess.PIPE);
File "c:\Python27\lib\subprocess.py", line 672, in __init__
errread, errwrite)
File "c:\Python27\lib\subprocess.py", line 882, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
¿Alguien sabe lo que está pasando ¿aquí? Si intento ejecutar el comando git que indica la línea # 332 (origen de git rev-parse) desde el shell de línea de comando, el comando se ejecuta correctamente.
Gracias.
Actualización: Parece que la secuencia de comandos no puede iniciar ningún proceso cuyo archivo exec no se encuentre en la ruta de ejecución. Creo que es un problema de inicialización con el pitón en ventanas ...
Parece que el uso de subprocess.Popen (["git"] ...) ignora la variable PATH. Tengo una solución, que es llamar a un archivo por lotes de ruta completa que llama al archivo git exec – Tate
Gracias, esto funcionó para mí. – Kevin
¿Podría aclarar qué hizo exactamente, no puedo hacer que funcione? – Restuta