Il est possible de cloner un référentiel git, en spécifiant le nom d'utilisateur et le mot de passe dans la commande. Exemple:
git clone https://username:[email protected]/file.git
Est-il possible de spécifier également le nom d'utilisateur et le mot de passe lors du push? Ainsi, par exemple, en cours d'exécution git push origin --all
affichera alors une demande de mot de passe. Je veux cela en une seule commande.
(Je suis conscient de la possibilité de configurer des clés et d'autres solutions, mais je veux savoir s'il existe un moyen de continuer à utiliser le nom d'utilisateur et le mot de passe avec une seule commande.) J'exécute Git Bash sur Windows 8.1.
git commit
?Réponses:
Oui, tu peux faire
git push https://username:[email protected]/file.git --all
dans ce cas,
https://username:[email protected]/file.git
remplacez leorigin
ingit push origin --all
Pour voir plus d'options pour
git push
, essayezgit help push
la source
@
?' '
, par exemple:git push 'https://username:[email protected]/file.git'
J'ai utilisé le format ci-dessous
git push https://username:[email protected]/file.git --all
et si votre mot de passe ou nom d'utilisateur contient @ remplacez-le par% 40
la source
urlencode($password)
encodera non seulement tous les caractères spéciaux@
.Selon la documentation Git , le dernier argument de la
git push
commande peut être le référentiel vers lequel vous souhaitez pousser:Et le
repository
paramètre peut être une URL ou un nom distant.Vous pouvez donc spécifier le nom d'utilisateur et le mot de passe de la même manière que vous le faites dans votre exemple de
clone
commande.la source
Git ne stockera pas le mot de passe lorsque vous utilisez des URL comme ça. Au lieu de cela, il ne stockera que le nom d'utilisateur, il n'a donc qu'à vous demander le mot de passe la prochaine fois. Comme expliqué dans le manuel , pour stocker le mot de passe, vous devez utiliser un assistant d'identification externe . Pour Windows, vous pouvez utiliser le magasin d'informations d'identification Windows pour Git . Cet assistant est également inclus par défaut dans GitHub pour Windows .
Lors de son utilisation, votre mot de passe sera automatiquement mémorisé, vous n'aurez donc à le saisir qu'une seule fois. Ainsi, lorsque vous clonez, votre mot de passe vous sera demandé, puis chaque nouvelle communication avec la télécommande ne vous demandera plus votre mot de passe. Au lieu de cela, l'assistant d'informations d'identification fournira à Git l'authentification.
Cela ne fonctionne bien sûr que pour l'authentification via https; pour ssh access (
[email protected]/repository.git
), vous utilisez des clés SSH et celles dont vous vous souvenezssh-agent
(ou le concours de PuTTY si vous utilisez plink).la source
C'est possible mais, avant git 2.9.3 (août 2016), a
git push
afficherait l'URL complète utilisée lors du repoussage vers le repo cloné.Cela inclurait votre nom d'utilisateur et votre mot de passe!
Mais pas plus: voir commit 68f3c07 (20 juillet 2016) et commit 882d49c (14 juillet 2016) par Jeff King (
peff
) .(Merged by Junio C Hamano -
gitster
- in commit 71076e1 , 08 août 2016)la source
Pour toute personne ayant des problèmes avec les mots de passe avec des caractères spéciaux, omettez simplement le mot de passe et il vous le demandera:
la source