Password GitHub modificata, non più in grado di eseguire il push di nuovo al telecomando


111

Dopo aver cambiato la password di GitHub, non riesco a eseguire il push al telecomando:

$ git push origin master
remote: Invalid username or password.

Esiste solo una nuova clonazione del repository?


Basta rimuovere e aggiungere di nuovo il telecomando
onmyway133

1
Veramente? "Basta rimuovere e aggiungere di nuovo il telecomando"? Iniziare da zero è scomodo e soggetto a errori in alcune operazioni.
Jason S

1
Questo può accadere anche dopo aver abilitato l'autenticazione a due fattori, in questo caso dovresti seguire le istruzioni qui: stackoverflow.com/a/34919582/2898283
mechatroner

@ JasonS Riaggiungere un telecomando non è certo "iniziare da zero". Questo modificherebbe solo le copie locali dei rami remoti, che comunque non modifichi direttamente; tutte le filiali locali rimarrebbero intatte, anche se non sono sicuro che il tracciamento ne risentirebbe.
jpmc26

@ jpmc26 Non intendo il contenuto del repository, intendo aggiungere nuovamente l'URL.
Jason S,

Risposte:


187

Se hai modificato solo la password del telecomando, non il nome utente, prova il seguente comando per controllare le informazioni del telecomando: -

git remote show origin

Questo chiederà la tua password per l'utente git fornito, inseriscila correttamente e ora prova: -

git pull

o,

git push

Dovrebbe funzionare a meno che tu non debba cambiare altre cose come nome utente o URL remoto, puoi dare un'occhiata alla seguente documentazione di Git: -

https://help.github.com/articles/setting-your-username-in-git/

https://help.github.com/articles/changing-a-remote-s-url/


9
Per me funziona. git remote show originmostra prompt
Lazaro Fernandes Lima Suleiman

14
Interessante: git remote show originnon mi ha showsuggerito , mi ha solo colpito, quindi ho pensato che non fosse riuscito (a quello che avevo bisogno che facesse). Ma, per ogni evenienza, ho provato git push origin mastere questo mi ha spinto. Quindi ... sono ancora arrivato dove dovevo essere :)
dwanderson

1
Ho provato con IntelliJ e Android Studio ed entrambi non hanno funzionato senza riavvio, probabilmente perché le credenziali sono memorizzate nella cache. Ho modificato la risposta per riflettere questo.
Oliver Hausler

2
Ha funzionato proprio come descritto per me.
nabrown

2
Ha funzionato come previsto su Mac. Dovrebbe essere accettata la risposta.
Aakanksha

38

Per aggiornare la password nel tuo terminale. Prova il comando seguente, ti chiederà di nuovo la password.

git push -u origin master

37

L' OP kenu.heo ha aggirato il problema rimuovendo e poi clonando nuovamente il repository.

Ma per altri:

Dipende dal tuo sistema operativo, dalla versione di git e dal protocollo che stai utilizzando.

A seconda del sistema operativo, hai dei modi per memorizzare nella cache le tue credenziali ( OSX KeyChain su Mac , credential helper netrc su Windows o Linux ) e questo potrebbe spiegare perché il tuo push non funziona dopo aver cambiato la tua password GitHub.
Per un portachiavi, dovresti reimpostare la password memorizzata al suo interno .

Quel problema di password suggerisce anche che stai utilizzando un URL https (non uno ssh, che dipenderebbe dalle chiavi ssh pubbliche / private e non sarebbe influenzato dalla password di un account GitHub, poiché la chiave SSH pubblica è registrata sul tuo account GitHub non sarebbe cambiato).

Controllalo con un file git remote -v.

Puoi forzare git a utilizzare il tuo login GitHub con:

git remote set-url origin https://Username@github.com/Username/MyRepo.git

(sostituisci " Username" e " MyRepo.git" con i tuoi valori)

Quindi prova di nuovo a spingere, dovrebbe chiedere la tua password GitHub. Inserisci quello nuovo.

Se non funziona, controlla di aver attivato 2FA (2-Form Authentication). In tal caso, è necessario generare un PTA (Personal Token Access).
Vedere di più in " Configurare i client Git, come GitHub per Windows, per non richiedere l'autenticazione ".


Grazie, utilizzo MacOSX, git 1.8.x. Ho lavorato con la rimozione del repository locale, quindi l'ho reclinato.
kenu.heo

2
@ kenu.heo ok. Ho modificato la risposta per includere la tua conclusione, ma ho anche aggiunto elementi che potrebbero aiutare gli altri.
VonC

git remote set-url origin https://github.com/shared_repo/shared_repo.githa funzionato per me su Windows da Git Shell
Choylton B. Higginbottom

Funziona su Ubuntu 16.04 LTS.
sd

22

Su un sistema Windows nessuno dei passaggi ha funzionato per me, il problema è che le credenziali sono archiviate in Windows Credentials Manager.

Puoi andare su Pannello di controllo -> Account utente -> Gestione credenziali -> Credenziali di Windows

Sotto Credenziali generiche troverai il tuo URL git, espandi la selezione e fai clic su modifica.

Una volta modificato, attiva di nuovo un git push e dovrebbe funzionare.

Fonte delle informazioni: - Rimuovi le credenziali da Git


1
Posso confermare lo stesso su Windows 10.
tmsss

Questo ha funzionato per me. Windows ha memorizzato le credenziali git e dopo aver aggiornato la password per Windows il mio account git ufficiale non è stato in grado di sincronizzarsi.
Krishna Oza

16

Da quello che ho sperimentato, devi solo reinserire l'addr remoto .

E git chiederà usr / password per quello nuovo invece di tacere e usare quello deprecato.

vedi i tuoi telecomandi, individua quello che vuoi cambiare

>git remote  
github
gitcafe
company

ad esempio, se hai cambiato la password del repo aziendale, puoi fare:

>git remote remove company

Questo non toccherà la tua cartella , non toccherà i tuoi commit . Questo elimina semplicemente una stringa di URL da git

Quindi, aggiungi di nuovo questo URL:

>git remote add company https://git.AyCramba.com/xxx.git

Spingi ad esso:

>git push company master
username for 'https://git.AyCramba.com':
password for 'https://git.AyCramba.com':

Quindi inizia a spingere

Spero che sia d'aiuto.


1
Il git remote set-urlmenzionato nella mia risposta fa una rimozione + aggiunta.
VonC

3

Il nome utente e la password possono essere archiviati in Windows Credential Manager. Controlla e aggiorna lì, se necessario.

(So ​​che è un po 'ovvio e semplice, ma potrebbe aiutare alcune persone.)


2

Per me, eseguendo git su Windows7 usando git-bash, eseguendo:

git push origin master

Funziona. Ciò ha spinto Windows7 a chiedere di nuovo i miei crediti git, quindi a salvarli (ovunque lo faccia Windows), per aggiornare la password.


1

Ok, il post originale è piuttosto vecchio, ma è il miglior risultato in Google e nessuna delle risposte ha funzionato per me. Anche molti altri post SO e GH non hanno funzionato. Pubblicare questo per aiutare chiunque mi segua qui!

La mia situazione è leggermente diversa: account GH personale, push a un repository aziendale privato, utilizzando SSH e la riga di comando git su Mac. La mia password non è memorizzata né nel mio .gitconfigné in alcun portachiavi né in git credential.helper.

Nell'esempio seguente PersonalName è il mio account GH, CompanyName è la società (il proprietario del repo su GH) e RepoName è il repository.

Anche il mio messaggio di errore originale era leggermente diverso: il tentativo ha git push origin masteravuto come risultato

remote: Repository not found.
fatal: repository 'https://github.com/CompanyName/RepoName.git/' not found

Il telecomando funzionava prima della modifica della password di GH e non volevo rimuovere il telecomando perché avevo modifiche locali che dovevo inviare.

Alla fine una risposta di sette a questa domanda sul forum della community di GitHub mi ha indirizzato nella giusta direzione. La cosa fondamentale era collegare il nome del mio account GH con il repository remoto (privato).

Questo ha funzionato per me:

git remote set-url origin https://PersonalName@github.com/CompanyName/RepoName.git

Poi

git remote show origin

richiesto con

Password for 'https://PersonalName@github.com': 

Sono stato in grado di inserire la mia nuova password, vedere i dettagli del telecomando e ci sono git push origin masterriuscito.


0

Se hai configurato Github 2FA Auth, hai bisogno di un token di accesso personale (al posto della tua password github in git cli), segui queste istruzioni per crearlo: https://help.github.com/en/github/authenticating-to -github / creazione-a-personale-access-token-per-il-riga di comando

Quindi fai qualcosa di simile

git checkout master

git pull origin <--- A questo punto ti verranno chieste le tue credenziali, inserisci il tuo normale utente github e come password incolla il token generato nel link sopra.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.