J'ai un problème avec git et mon terminal.
Voici une galerie pour vous montrer mon problème: http://imgur.com/a/6RrEY
Quand je pousse des commits depuis mon terminal, git dit que je les pousse avec un autre nom d'utilisateur, c'est un utilisateur de mon organisation (mon entreprise) sans aucun commit et il semble qu'il n'appartienne à personne: (vérifier la première photo de la galerie)
Mais cela ne se produit pas lorsque j'utilise Github pour mac, dans le flux, je vois les commits poussés par moi-même.
Le problème affecte également mes référentiels personnels, mon terminal dit que je n'ai pas l'autorisation de pousser des commits sur ces référentiels (ce qui est évidemment faux) car il essaie de le pousser avec cet utilisateur: (vérifier la deuxième photo de la galerie)
Devine quoi ? Cela ne se produit pas non plus avec Github pour mac.
J'ai changé mon ordinateur pour un tout nouveau il y a quelques jours, donc j'ai réinitialisé toute ma clé ssh de github et n'en ai laissé qu'une nouvelle générée par Github pour Mac, donc je ne pense pas qu'il y ait une clé utilisateur fantôme / ssh cachée quelque part, ce disque dur est tout neuf: (voir la troisième photo de la galerie)
Mon fichier .gitconfig est tout clair, il n'y a que mes informations d'identification: (vérifier la quatrième photo de la galerie)
Je ne comprends vraiment pas, aidez-moi, StackOverflow, vous êtes mon seul espoir.
(Mes excuses pour mes faibles compétences Gimp et la référence Star Wars)
ÉDITER : ssh-add -l
ne montre que la bonne clé ssh créée par github pour mac et je n'ai qu'un seul compte github
EDIT2: ssh -T git@github.com
reconnaissez-moi comme le bon utilisateur.
EDIT3: Après quelques tests, il semble que mon terminal fasse les commits avec mon nom d'utilisateur, mais les pousse avec l'autre, Github pour mac commits et pousse avec le bon nom d'utilisateur.Cette situation se produit avec chaque repo que j'ai / crée (même nouveau ceux).
EDIT4: Dans un référentiel personnel git log --pretty="%h %an %ae"
montre mon bon nom d'utilisateur
EDIT5: Aucun signe de variables d'environnement qui remplaceraient mes informations d'identification dans mon env
. Même si j'essaie de définir ces variables avec les bonnes informations d'identification, le problème persiste.
EDIT6: Les choses fonctionnent normalement si je force l'utilisateur sur le chemin /.git/config
d'un référentiel mais je ne pense pas que ce soit la bonne option:http://USER@github.com/USER/REPO.git
EDIT7: Nous avons supprimé l'utilisateur git qui a poussé les commits pour moi et cela apporte une autre erreur:remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/USER/REPO.git/'
EDIT FINAL: J'ai installé git avec homebrew, tapé git config --global push.default simple
et maintenant il prend mes informations d'identification même sans forcer l'utilisateur. C'est étrange. Merci à tous pour votre aide, vous êtes des gars formidables!
~/.gitconfig
est clair et est donc $project_root/.git/config
. En fait, j'ai ce problème avec chaque projet personnel, les projets de travail peuvent être poussés puisque cet autre utilisateur appartient à mon organisation qui possède ces référentiels.
~/.gitconfig
et$project_root/.git/config
fichiers. L'un de ces deux est sûrement mal configuré pour le nom d'utilisateur.