estoy usando git para clonar un acuerdo de recompra a través de https así:¿Puedo agregar un nombre de usuario y contraseña a git clone usando la opción --recursive (para submódulos)?
git clone https://username:[email protected]/git/repo.git
Esto está bien, pero tiene un gran número de subrepos para clonar, así que estoy usando la opción --recursive
.
problema aquí es que para el nivel superior que toma el nombre de usuario & pase especifica pero para cada uno de recompra sub que pide nuevamente sus datos por lo que obtenemos lo siguiente:
C:>git clone --recursive https://username:[email protected]/git/repo.git
Cloning into repo...
remote: Counting objects: 15, done.
remote: Compressing objects: 100% (15/15), done.
remote: Total 15 (delta 8), reused 0 (delta 0)
Unpacking objects: 100% (15/15), done.
Submodule 'sub1' (https://alocation/git/repo.sub1) registered for path 'sub1'
Submodule 'sub2' (https://alocation/git/repo.sub2) registered for path 'sub2'
Submodule 'sub3' (https://alocation/git/repo.sub3) registered for path 'sub3'
Submodule 'sub4' (https://alocation/git/repo.sub4) registered for path 'sub4'
Cloning into sub1...
Username:
Password:
remote: Counting objects: 10, done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 10 (delta 0), reused 0 (delta 0)
Unpacking objects: 100% (10/10), done.
Username:
..............................etc....
¿Puedo dar el nombre de usuario contraseña & separablemente, así que no tengo que ingresar cada vez.
El caso de uso obvio es para una estructura de subrepo profunda como esta, donde hay muchos archivos. Ingresar los mismos datos para cada subrepo va a ser tedioso & propenso a errores.
Gracias por la respuesta VonC. Desafortunadamente, el texto anterior está tomado de un repositorio real. es decir, los subrepos se enumeran como se muestra. ¿Podemos agregar algo a la lista .gitsubmodule para recoger esto? – Neophyte
@Neophyte: sospecho que esto no es un problema de Git en absoluto. He actualizado mi respuesta para ilustrar las otras vías para explorar: mi apuesta es en el archivo '.netrc'. – VonC
Gracias agregando el _netrc hizo el truco – Neophyte