¿Cómo ingresar la contraseña para git push desde el script sin usar las keys SSH?

Necesito escribir un script que pueda enviar una label de un server de compilation a un server de git SIN USAR LLAVES SSH.

Más personas tienen acceso al server de compilation que al server de git, por lo que las keys SSH no funcionarán porque entonces cualquiera podría ingresar al server de git sin especificar sus propias cnetworkingenciales.

El script se ejecutará desde Jenkins / Hudson, que solicita al usuario un nombre de usuario y una contraseña cuando comienza la construcción, y luego los pasa como variables de entorno al script.

El problema es que no puedo encontrar la forma de obligar a git a aceptar la contraseña mediante progtwigción.

Lo intenté:

echo %password% | git push 

tanto como

 git push < tempfilewithpassword.txt (not that writing the password to a temp file is a good idea anyway). 

Pero en ambos casos, git sigue solicitando la contraseña.

ACTUALIZACIÓN: También he intentado una secuencia de commands de python, networkingirigiendo stdin y stdout, sin suerte, todavía get el aviso.

ACTUALIZACIÓN: Además probé Esperar para Windows, que NO recibe un aviso, ya sea en la console O en Esperar a sí mismo (IE Esperar nunca ve ningún resultado de Git, simplemente agota el time).

¿Alguna sugerencia?

NOTA: Permítanme aclarar, porque la gente realmente se obsesiona con el uso de keys SSH.

Requisitos:

  • Las cnetworkingenciales deben especificarse al comienzo de la compilation (Jenkins las acepta y las pasa a mi secuencia de commands).
  • Las cnetworkingenciales duran SOLO durante la duración de esta compilation única.
  • Las cnetworkingenciales pueden cambiar de una compilation a la siguiente.

Hasta donde yo sé, NADA que involucre la configuration de keys SSH satisfará esto (a less que requiera que el usuario cargue su key SSH cuando inicien el script, lo cual no es conveniente).

Si no desea que nadie tenga acceso de inserción a su repository de git, cree un usuario diferente en el server de compilation al que nadie más que usted tenga acceso, y asegúrese de que su directory personal sea legible solo. Este usuario se usará cuando desee labelr u otro empujar a su repository desde el script. Ahora puede configurar las keys ssh normalmente.

Sin embargo, me pregunto, ¿por qué tiene que ser el server de compilation el que inicia el push / pull? ¿No puede un script en la máquina que contiene su repo iniciarlo? Entonces todo el asunto sería discutible, ¿no?