Ho un problema con git e il mio terminale.
Ecco una galleria per mostrarti il mio problema: http://imgur.com/a/6RrEY
Quando eseguo il push dei commit dal mio terminale, git dice che li spingo con un altro nome utente, che è un utente della mia organizzazione (la mia azienda) senza alcun commit e sembra che non appartenga a nessuno: (controlla la prima foto della galleria)
Ma questo non accade quando uso Github per mac, nel feed vedo i commit spinti da me stesso.
Il problema riguarda anche i miei repository personali, il mio terminale dice che non ho il permesso di inviare commit su quei repository (il che è ovviamente sbagliato) poiché cerca di spingerlo con questo utente: (controlla la seconda foto della galleria)
Indovina un po ? Questo non accade anche con Github per mac.
Ho cambiato il mio computer con uno nuovo di zecca pochi giorni fa, quindi ho ripristinato tutta la mia chiave ssh di github e ne ho lasciato solo uno nuovo generato da Github per Mac, quindi non credo che ci sia qualche chiave utente fantasma / ssh nascosta da qualche parte, questo hdd è nuovo di zecca: (controlla la terza foto della galleria)
Il mio file .gitconfig è tutto chiaro, ci sono solo le mie credenziali: (controlla la quarta foto della galleria)
Davvero non capisco, aiuto, StackOverflow, sei la mia unica speranza.
(Le mie scuse per le mie scarse capacità di Gimp e il riferimento a Star Wars)
EDIT: ssh-add -l
mostra solo la buona chiave ssh creata da GitHub per Mac e ho un solo account GitHub
EDIT2: ssh -T git@github.com
riconoscimi come un buon utente.
EDIT3: Dopo alcuni test sembra che il mio terminale esegua i commit con il mio nome utente, ma li spinge con l'altro, Github per mac esegue il commit e spinge con il buon nome utente.Questa situazione si verifica con ogni repository che ho / creo (anche nuovo quelli).
EDIT4: In un repository personale git log --pretty="%h %an %ae"
mostra il mio buon nome utente
EDIT5: Nessun segno di variabili di ambiente che sovrascriverebbero le mie credenziali nel mio env
. Anche se provo a impostare quelle variabili con le buone credenziali il problema persiste.
EDIT6: Le cose funzionano normalmente se forzo l'utente nel percorso /.git/config
di un repository ma non penso che sia la buona opzione:http://USER@github.com/USER/REPO.git
EDIT7: abbiamo eliminato l'utente git che ha inviato i commit per me e questo porta un altro errore:remote: Invalid username or password. fatal: Authentication failed for 'https://github.com/USER/REPO.git/'
MODIFICA FINALE: ho installato git con homebrew, digitato git config --global push.default simple
e ora prende le mie credenziali anche senza forzare l'utente. È strano. Grazie a tutti per il vostro aiuto, siete bravissimi ragazzi!
~/.gitconfig
è chiaro e così è $project_root/.git/config
. In effetti ho questo problema con ogni progetto personale, i progetti di lavoro possono essere spinti poiché questo altro utente appartiene alla mia organizzazione che possiede quei repository.
~/.gitconfig
e$project_root/.git/config
file. Uno di questi due è sicuramente configurato male per il nome utente.