password manager for disable credential change windows git authentication

windows - manager - git set password command line



Git-Cómo usar el archivo.netrc en Windows para guardar usuario y contraseña (5)

Actualización de abril de 2013, git 1.8.3 :

Ahora puede usar un .netrc encriptado (con gpg).
En Windows: %HOME%/_netrc ( _ , no '' . '')

Se ha agregado una nueva credencial de solo lectura (en contrib/ ) para interactuar con los archivos .netrc/.authinfo .

Esa secuencia de comandos le permitiría usar archivos gpg encriptados de netrc , evitando el problema de tener sus credenciales almacenadas en un archivo de texto sin formato.

Los archivos con la extensión .gpg serán descifrados por GPG antes del análisis.
Múltiples argumentos -f están bien. Se procesan en orden y la primera entrada coincidente encontrada se devuelve mediante el protocolo de credencial auxiliar.

Cuando no se da la opción -f , los .authinfo.gpg , .netrc.gpg , .authinfo y .netrc en su directorio de inicio se usan en este orden.

Para habilitar esta credencial de ayuda:

git config credential.helper ''$shortname -f AUTHFILE1 -f AUTHFILE2''

(Tenga en cuenta que Git antepondrá " git-credential- " al nombre del asistente y lo buscará en la ruta).

# and if you want lots of debugging info: git config credential.helper ''$shortname -f AUTHFILE -d'' #or to see the files opened and data found: git config credential.helper ''$shortname -f AUTHFILE -v''

Vea un ejemplo completo en " ¿Hay alguna manera de saltear la escritura de contraseña al usar https:// github "?

Actualizar a finales de 2012, con git versión 1.7.9+ : esta respuesta de Mark Longair detalla el mecanismo de caché de credenciales que le permite no almacenar su contraseña en texto sin formato, como se muestra a continuación.

(Respuesta original)

Debes definir:

  • variable de entorno %HOME%
  • poner un archivo _netrc en %HOME%

Si está usando Windows 7

ejecuta el cmd escribe esto:

setx HOME %USERPROFILE%

y el% HOME% se establecerá en '' C:/Users/"username" ''

luego ve a él y _netrc un archivo llamado '' _netrc ''

Nota: para Windows, necesita un archivo '' _netrc '', no un '' .netrc ''.

Su contenido es bastante estándar (Reemplace el con sus valores):

machine <hostname1> login <login1> password <password1> machine <hostname2> login <login2> password <password2>

Luke menciona en los comentarios:

Utilizando la última versión de msysgit en Windows 7, no necesité configurar la variable de entorno HOME. El archivo _netrc solo hizo el truco.

Esto es de hecho lo que mencioné en " Tratando de" install "github, .ssh dir no allí ":
git-cmd.bat incluido en msysgit establece la variable de entorno% HOME%:

@if not exist "%HOME%" @set HOME=%HOMEDRIVE%%HOMEPATH% @if not exist "%HOME%" @set HOME=%USERPROFILE%

爱国者 cree en los comentarios que "parece que no funcionará para el protocolo http"

Sin embargo, respondí que netrc es utilizado por curl, y funciona para el protocolo http, como se muestra en este ejemplo (busque ''netrc'' en la página):. También se usa con el protocolo http aquí: " _netrc / .netrc alternative to cURL ".

Una trampa común con el soporte de netrc en Windows es que git eludirá su uso si una URL de https de origen especifica un nombre de usuario.

Por ejemplo, si su archivo .git/config contiene:

[remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = https://[email protected]/p/my-project/

Git no resolverá tus credenciales a través de _netrc , para solucionar esto, elimina tu nombre de usuario, así:

[remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = https://code.google.com/p/my-project/

¿Es posible usar un archivo .netrc en Windows cuando estoy usando Git para clonar un repositorio remoto con http y usuario - contraseña?


Esto permitirá que git se autentique en https usando .netrc

  • El archivo debe llamarse _netrc y ubicarse en c:/Users/<username>
  • Necesitará establecer una variable de entorno llamada HOME=%USERPROFILE% (Configure las variables de entorno de todo el sistema usando la opción Sistema en el panel de control. Dependiendo de la versión de Windows, es posible que tenga que seleccionar "Opciones avanzadas")
  • La contraseña almacenada en el archivo _netrc no puede contener espacios (citar la contraseña no funcionará)

Publique una forma de usar _netrc para descargar materiales del sitio www.course.com.Espero que algunos le ayuden.

Si alguien va a utilizar el coursera-dl para descargar los materiales de clase abierta en www.coursera.com. y en el SO Windows, alguien quiere usar un archivo como ".netrc" que está en el sistema operativo Unix para agregar la opción -n en lugar de -U -P por conveniencia. Puede hacer esto:

  1. compruebe la ruta de inicio en el sistema operativo Windows: setx HOME %USERPROFILE% ( consulte la respuesta de VonC). Guardará el HOME como C:/Users/"username" .

  2. localice en el directorio C:/Users/"username" y cree un nombre de archivo _netrc . NOTA: NO hay ningún sufijo. el contenido es como: machine coursera-dl login <user> password <pass>

  3. use el comando como coursera-dl -n --path PATH <course name> para descargar los materiales de la clase. más detalles de las opciones de coursera-dl para esta página .


También puede instalar Git Credential Manager para Windows para guardar contraseñas de Git en el administrador de credenciales de Windows en lugar de netrc. Esta es una forma más segura de almacenar la contraseña