web-dev-qa-db-fra.com

Comment changer temporairement l'utilisateur git ssh pour un Push distant?

Est-il possible de changer temporairement l'utilisateur ssh pour un "maître distant git Push" sans gâcher avec .git/config ou "git remote", ou en utilisant toute l'URL distante? 

[root@Host gitrepo]# git Push otheruser@remote master # this does not work, but how great it would be
[root@Host gitrepo]# USER=otheruser git Push remote master # still asks password for root
27
Andor

Avez-vous essayé d'utiliser toute l'URL distante? 

git Push ssh://<temp_user>@<Host>/<repo_path> <local_branch>:<remote_branch>

et vous serez invité à fournir le mot de passe

36
HiB

Une fois que vous avez effectué la validation, vous pouvez utiliser la syntaxe suivante:

git Push https://<username>@github.com/<github repository> <local branch name>:<remote branch name>

Votre mot de passe github vous sera demandé pour traiter le Push.

Par exemple, si votre nom d'utilisateur github est "foobar", l'URL de clonage du référentiel est " https://github.com/bar/ish.git ", et que les branches locale et distante sont nommées "nonce". peut utiliser les éléments suivants:

git Push https://[email protected]/bar/ish.git nonce:nonce
17
Jesuisme

J'utilise

git Push https://github.com/${userName}/${repoName}

Il vous demandera d'entrer le nom d'utilisateur et le mot de passe

8
0oneo

L’adresse ssh enregistrée auprès de git remote inclut probablement déjà le nom d’utilisateur. Vous devez donc utiliser une URL ssh complète, telle que:

otheruser@remote:arepo

Cela ne fonctionnera pas, car ssh utilisera les clés publique/privée par défaut (actuellement utilisées par le premier utilisateur pour l'authentification).

Vous pouvez enregistrer une nouvelle télécommande dans votre configuration locale:

# use the current ssh address registered for Origin, changing just the user
# but you need a config file
git remote add originOtheruser otheruser:arepo

Vous devez avoir un fichier $HOME/.ssh/config, afin de définir l'entrée ssh 'otheruser', car ssh doit savoir quelle clé publique/privée il doit utiliser: il ne peut s'agir de celles par défaut ($HOME/.ssh/id_rsa et $HOME/.ssh/id_rsa.pub).

Voir par exemple " comment ajouter la clé de déploiement pour 2 référant avec 1 utilisateur sur github "

Host otheruser
HostName remote
User otheruser
IdentityFile ~/.ssh/otheruser

Cela suppose que vous ayez stocké les clés publiques/privées pour otheruser comme:

$HOME/.ssh/otheruser
$HOME/.ssh/otheruser.pub

Maintenant, vous pouvez utiliser cette nouvelle télécommande pour Push:

git Push originOtheruser master
5
VonC

Pour l'utilisateur Windows: Suivez les instructions:

Panneau de configuration >> Compte d'utilisateur >> Gestionnaire d'informations d'identification >> Informations d'identification Windows >> Informations d'identification génériques

Vous pouvez modifier les informations d'identification de git:

cliquez modify >> fournissez uname et mot de passe

Ou vous pouvez supprimer les informations d'identification git . La prochaine fois que vous utiliserez Repo Push, il vous demandera des informations d'identification.

0
Kartik Ranpise