Es posible clonar un repositorio de git, especificando el nombre de usuario y la contraseña en el comando. Ejemplo:
git clone https://username:[email protected]/file.git
¿Es posible especificar también el nombre de usuario y la contraseña al presionar? De modo que, por ejemplo, la ejecución git push origin --all
generará una salida solicitando una contraseña. Quiero esto en un comando.
(Soy consciente de la capacidad de configurar claves y otras soluciones, pero quiero saber si hay una manera de seguir usando el nombre de usuario y la contraseña con un solo comando). Estoy ejecutando Git Bash en Windows 8.1.
git commit
?Respuestas:
Si tu puedes hacer
git push https://username:[email protected]/file.git --all
en este caso,
https://username:[email protected]/file.git
sustituir laorigin
degit push origin --all
Para ver más opciones de
git push
, intentegit help push
fuente
@
?' '
, por ejemplo:git push 'https://username:[email protected]/file.git'
Usé el siguiente formato
git push https://username:[email protected]/file.git --all
y si su contraseña o nombre de usuario contiene @ reemplácelo con% 40
fuente
urlencode($password)
esto codificará todos los caracteres especiales no solo@
.Según la documentación de Git , el último argumento del
git push
comando puede ser el repositorio al que desea enviar:Y el
repository
parámetro puede ser una URL o un nombre remoto.Por lo tanto, puede especificar el nombre de usuario y la contraseña de la misma manera que lo hace en su ejemplo de
clone
comando.fuente
Git no almacenará la contraseña cuando use URL como esa. En su lugar, solo almacenará el nombre de usuario, por lo que solo tendrá que solicitarle la contraseña la próxima vez. Como se explica en el manual , para almacenar la contraseña, debe utilizar un asistente de credenciales externo . Para Windows, puede usar Windows Credential Store para Git . Este ayudante también se incluye de forma predeterminada en GitHub para Windows .
Al usarlo, su contraseña se recordará automáticamente, por lo que solo debe ingresarla una vez. Entonces, cuando clone, se le pedirá su contraseña, y cada vez que se comunique con el control remoto, no volverá a solicitar su contraseña. En cambio, el asistente de credenciales proporcionará a Git la autenticación.
Por supuesto, esto solo funciona para la autenticación a través de https; para el acceso ssh (
[email protected]/repository.git
) usa las claves SSH y las que puede recordar usarssh-agent
(o el concurso de PuTTY si está usando plink).fuente
Es posible, pero, antes de git 2.9.3 (agosto de 2016), a
git push
imprimiría la URL completa utilizada al retroceder al repositorio clonado.¡Eso incluiría su nombre de usuario y contraseña!
Pero no más: consulte la confirmación 68f3c07 (20 de julio de 2016) y la confirmación 882d49c (14 de julio de 2016) de Jeff King (
peff
) .(Combinado por Junio C Hamano -
gitster
- en el compromiso 71076e1 , 08 de agosto de 2016)fuente
Para cualquiera que tenga problemas con las contraseñas con caracteres especiales, simplemente omita la contraseña y se la pedirá:
fuente