2010-10-28 24 views
18

Sono abbastanza nuovo per git. Ho una configurazione di pronti contro termine su un server (A) in cui l'accesso avviene tramite chiavi ssh rsa. Ho alcuni utenti lì incluso me stesso. Ora eseguo git clone sul mio computer locale e ottengo una copia locale, apporto le modifiche e push origin master, tutto funziona correttamente.Git Pull: modifica autenticazione

Il problema che sto verificando è che il nostro server di test (server B) ha già tutto configurato e cosa mi piacerebbe fare è tirare le mie ultime modifiche a quel server. Il server di test ha anche diversi utenti, oltre a www-data come proprietario dell'intera directory (con Apache in esecuzione).

Quando si accede tramite SSH utilizzando il mio nome, non posso git pull, dice .git è bloccato, quindi faccio sudo git pull che mi chiede la password per un utente diverso (utente1). Non conosco questa password e vorrei rimuovere completamente quell'utente, ma prima di farlo, devo cambiare il repository git sul server di test per estrarre le modifiche usando MY authentication (kovshenin) e non user1.

Qual è il modo corretto per farlo? Non vorrei rimuovere tutto e ricominciare da un nuovo clone, poiché ha alcune modifiche locali.

risposta

34

Dopo tre ore di ricerca e riproduzione ho trovato la risposta da solo. I dettagli di autenticazione sono memorizzati nel file .git/config sotto l'impostazione url nella sezione [remote "origin"].

+14

Bene, puoi usare il comando 'git remote -v' per mostrare la configurazione remota corrente e fare un 'git remote set-url ssh: // tu @ location ...' Non è necessario modificare direttamente i file di configurazione – tvlooy

+2

Ho bisogno di aggiungere "origine": git remote set-url origin https: // usera @ .... – Bryji