Come Gestire Più Git Account su Un Sistema di

0
294

Se hai provato ad usare Git con più fornitori diversi, o con più account diversi, si può incorrere in problemi con autenticato tutti e due allo stesso tempo. Ecco come gestire due account senza incorrere in conflitti.

Come Git Gestisce Conti

La prima cosa da capire è che Git è interamente locale—il repository locale non è controllato dal server che si utilizza per memorizzare il codice sul. Esso si collega solo al repository remoto, quando si sta spingendo o tirando gli aggiornamenti. Quando si fa questo, si utilizza Git dettagli dell’account.

L’unico dettaglio si utilizza quando, così facendo, sono la tua email e nome utente. La password per l’account viene chiesto ogni volta, o memorizzate nel portachiavi, o irrilevante se si sta utilizzando le chiavi SSH (che dovrebbe essere). Se il nome utente è diverso da quello dell’account hai le credenziali per, non essere in grado di spingere o tirare fino a risolvere il problema. In alcuni casi, se si utilizza la stessa e-mail per account diversi, la spinta può passare attraverso, ma si presentano con un diverso nome utente si impegna, che non può essere l’ideale.

Questi dettagli sono definiti nel git config. Probabilmente hai dovuto eseguire i seguenti comandi per modificare il nome dell’account utente e-mail:

git config –global utente.nome utente
git config –global utente.e-mail

Questo set di configurazione globale per il nuovo nome utente e e-mail. Tuttavia, un altro problema è il risultato. Perché è imposta a livello globale, se si desidera checkout di un progetto su un account diverso, rompere le impostazioni per gli altri repository.

La soluzione è quella di impostare una configurazione personalizzato per ogni repository che utilizza un account diverso. Impostare il global nome utente e e-mail che utilizzi più di frequente conto, in quanto sarà il valore di default per tutti i nuovi repository repository e senza alcuna configurazione.

Tuttavia, per ogni repository che utilizza un tipo di account che si desidera lasciare la
–flag globale:

git config utente.nome utente
git config utente.e-mail

Questo sostituisce la configurazione di default, quindi, anche se si modifica l’account predefinito, l’account locale, continuerà ad essere usato per questo repository.

Per la gestione delle Credenziali per l’Account Multipli

Si desidera utilizzare le chiavi SSH comunque per Git, quindi, la gestione delle credenziali deve essere un non-problema. E ‘ perfettamente accettabile per utilizzare la stessa chiave SSH ovunque—la tua chiave SSH è legato alla macchina, e, a sua volta, la propria identità. E ‘ diverso da una password; non c’è un modo per rompere senza introdursi nel tuo personal computer, che è molto meno probabile che accada di una violazione dei dati.

Tuttavia, se è necessario utilizzare diverse chiavi SSH per qualche motivo, è possibile farlo. Per prima cosa, devi per garantire la secondaria di chiavi SSH è caricato nel vostro portachiavi, di solito da modificare ~/.bashrc per chiamare ssh-add quando si carica il terminale:

ssh-add ~/.ssh/secondaria

In caso contrario, dovrete utilizzare i-flag e specificare il percorso della chiave di ogni tempo.

Per fare in modo che Git utilizzare chiavi diverse per i diversi account, dovrai modificare ~/.ssh/config e aggiungere un blocco dell’Host per ogni account:

# Account personale, – la configurazione di default
Host github.com
HostName github.com
Utente git
IdentityFile ~/.ssh/id_rsa

# Account di lavoro-1
Host github.com:secondaria
HostName github.com
Utente git
IdentityFile ~/.ssh/secondaria

Questo verrà utilizzato in diversi file di chiavi basate sul nome host seguenti git@ in Git URL. Github aggiunge il tuo nome utente per il Git URL, quindi è facile distinguere tra gli utenti.