2016-05-27 25 views
7

Ho un utente git globale configurato, ma voglio utilizzare un utente diverso per un singolo progetto git.Local git config che non sovrascrive l'utente globale per il progetto

All'interno di tale progetto, ho utilizzato git config --local user.name "localuser" e git config --local user.email "[email protected]" per impostare l'utente e l'e-mail del progetto locale.

Tuttavia, quando provo a spingere per il mio telecomando su GitHub, ottengo questo errore:

remote: Permission to localuser/repo.git denied to globaluser. 
fatal: unable to access 'https://github.com/localuser/repo.git/': The requested URL returned error: 403 

Ecco un output che potrebbe aiutare con la diagnosi:

git remote -v:

github https://github.com/localuser/repo.git (fetch) 
github https://github.com/localuser/repo.git (push) 

git config --list:

user.name=globaluser 
[email protected] 
... 

git config --local --list:

user.name=localuser 
[email protected] 
... 

git config user.name:

localuser 

risposta

4

avevo commesso i miei cambiamenti e ha ricevuto un permesso negato con il mio utente globale. Successivamente, l'utente locale non ha fatto nulla, anche se git config user.name ha riportato l'utente locale corretto.

Quello che ha funzionato è stato (courtesy of this google groups thread):.

git commit --amend --reset-author

presumo i cambiamenti impegnati hanno avuto l'autore originale attaccato

1

Se si sta lavorando su OSX con GitHub che potrebbe essere un problema del certificato tuo. Il certificato GitHub, che memorizza il tuo user.name e user.email, sovrascrive le impostazioni di configurazione locali.Un modo per risolverlo è quello di andare al tuo portachiavi e rimuovere il certificato GitHub.