2013-02-05 14 views
13

Modifica # 3

Aggiornamento questo in cima, perché ha risolto il mio problema e mi ha dato un buon passo di risoluzione dei problemi che non sapevo circa (e potrebbe risparmiare un po 'di tempogit push Heroku maestro Autorizzazione negata (publickey)

Provare a ottenere l'output di ssh -vvv [email protected]. Per me, ssh era appeso a provare le chiavi in ​​/ c/Program Files (x86) /Emacs/.ssh quando la mia chiave pubblica era in /c/Users/NumberOverZero/.ssh

Eliminare la cartella ssh di Emacs (che era vuoto) risolto il mio problema dal momento che ssh avrebbe quindi controllato la cartella Utenti .ssh.


sto ottenendo Permission denied (publickey) quando si cerca di git push heroku master.

Un paio di cose che rende questo diverso dai post più sotto:

  • ho ssh a lavorare per github
  • sono stato in grado di spingere con successo a Heroku ieri sera
  • Da quella spinta, io' ho apportato una modifica a riga singola a un file js, e ho commesso e spinto. Non ci sono stati altri cambiamenti.

Il più vicino ho trovato è stato questo post:

git clone heroku ssh permission denied

Ho guardato attraverso le questioni connesse (c'è un bel po '):

git push heroku master Permission denied (publickey). fatal: The remote end hung up unexpectedly
git push heroku master permission denied
git clone heroku ssh permission denied
https://stackoverflow.com/questions/13059076/git-push-permission-denied-publickey-windows-xp
heroku - rails - Permission denied (publickey)

ho provato:

  1. heroku keys:clear 
    heroku keys:add 
    
  2. heroku keys:clear 
    *delete every key in .ssh* 
    heroku keys:add 
    
  3. *delete my application on heroku* 
    heroku keys:clear   
    heroku login (adds key for me) 
    heroku create 
    git push heroku master 
    fails 
    
  4. *delete the app on heroku* 
    delete keys in .ssh 
    heroku keys:clear 
    copy all files into a new repository 
    push new repository to github successfully 
    heroku login (adds github key for me) 
    heroku create 
    git push heroku master 
    fails 
    
  5. *delete the app on heroku* 
    heroku keys:clear 
    heroku login (adds key for me) 
    heroku create 
    heroku git:clone app app 
    fails 
    

Qualche idea? Ho seguito tutti i passaggi degli SO collegati - molti dei quali erano solo persone che non stavano eseguendo heroku: aggiungere o impostare le chiavi ssh (che ho fatto in ognuna di queste).

Mi permetto di prendere il volante quasi sempre, (invece di creare direttamente chiavi SSH) assumendo che i comandi integrati facciano ciò di cui avevano bisogno quando non c'erano le chiavi SSH. Non sembra.

EDIT: E ora che ho eliminato l'app, il nuovo addon relic è allarmante che il sito Web non funziona. Cercando di accedere attraverso il loro sito web mi chiede di accedere tramite heroku.Quale non riesco a trovare un modo di fare, dal momento che l'app è sparita. C'è un modo per eliminare quell'addon ora che non posso accedere all'app? heroku addons dà un errore, quindi non penso che ci sto arrivando da lì.

EDIT # 2: aggiunto un altro passaggio che ho provato: spostare i file nel nuovo repository e passare alla nuova applicazione.

+0

stai usando la gemma di heroku o la toolbet? qual è il tuo sistema operativo? hai provato dopo un po 'di tempo? forse erano alcuni errori API? –

+0

Ho usato l'autoinstaller per win7, che credo sia il toolbelt. Ho provato 11 ore fa e 2 ore fa (più volte ciascuno). Ho controllato il loro stato e non ho visto problemi API, ma c'era qualcosa (all'incirca) un'ora prima che provassi la prima spinta che ha fallito, credo. – NumberOverZero

+0

@NumberOverZero - Potresti approfondire come l'output ti ha aiutato? Il muro del testo di debug emesso da -vvv è indecifrabile. – Constablebrew

risposta

4

Bel lavoro che collega a tutte le altre cose che hai guardato e provato! (che migliorerà le risposte che ottieni, ma dovresti comunque essere preparato per un sacco di "hai provato ..." e "forse è ..." perché questo è un problema di sistema/ambiente che non è presente flusso normale)

È possibile che durante la sessione del terminale locale si sia verificato un problema che è andato perduto. (Ho avuto questo accada un mucchio di volte)

cose potrebbe essere:

  1. le chiavi SSH su Heroku
  2. la vostra capacità di spingere fino a Heroku da quel computer/rete
  3. qualcosa sul tuo repository git

Mi sono imbattuto in questa volta e mi stava facendo impazzire. Ho saltato sul mio account cloud9 (GRATUITO), clonato alcune semplici app per rails da github e l'ho trasferito su heroku, il che mi ha aiutato a dimostrare che il mio account heroku andava bene, heroku stesso andava bene, ma il mio laptop locale aveva alcuni problemi nella mia configurazione . Penso che il problema fosse il mio nome utente, ma non ricordo. (passare a un altro ambiente e iniziare da zero mi ha aiutato a realizzare il problema)

+0

Grazie per la risposta. (1) Se si tratta di qualcosa sulle mie chiavi ssh su heroku, quali sono le chiavi "heroku: clear" che non si prendono cura di? Inoltre, c'è un altro modo per gestire la loro versione delle mie chiavi? (2) Certamente una possibilità. Posso provare questo con cloud9 più tardi credo. (3) Ho provato a copiare tutto in un nuovo repository, ho spinto con successo a github e poi ho cancellato la mia app su heroku e ho provato a caricare il nuovo repository in una nuova app di heroku. Lo aggiungerò alla lista, grazie. Aggiornamento – NumberOverZero

+0

: Ho provato a spingere da cloud9 e ci sono riuscito, quindi cercherò di reinstallare completamente il toolbelt e vedere cosa succede. La spinta da c9 sta mostrando una dimensione di repository di 145mb sebbene, quando è solo ~ 1-2 su github (con meno di una dozzina di commit, da quando ho fatto un nuovo repository nel test # 4). Lo accetterò una volta che vedo cosa succede con una reinstallazione. Grazie per l'aiuto! – NumberOverZero

+0

Ricorda che dimensione slug! = Dimensione del repo. Lo slug ha il tuo codice più eventuali dipendenze e qualsiasi linguaggio anche in runtime. Se stai usando un linguaggio conforme come Java, avrà anche la fonte compilata. – ryanbrainard

0

Il motivo principale per cui si ottiene questo messaggio è perché non è stato aggiunto ssh-keygen alle variabili di ambiente.

Questo comando si trova nella directory bin dei file di programma Git.

È necessario aggiungere la directory bin alle variabili di ambiente.

9

Ho avuto lo stesso problema per Windows 7 scatola e trovato la soluzione qui: http://www.gmarwaha.com/blog/2011/05/18/heroku-trouble-with-windows-and-ssh-keys/

Soluzione: In genere una volta che si creano le chiavi come detto sopra, due file - “id_rsa” e “ id_rsa.pub "- sono memorizzati nella cartella" .ssh " all'interno della cartella home dell'utente. Se stai lavorando con linux, lo sembra essere abbastanza buono. Ma per la versione Windows di git quella non sembra tagliarla. Vuole che le chiavi vengano memorizzate all'interno della cartella ".ssh" di all'interno della cartella di installazione "msysgit". Se non si trova una cartella ".ssh" all'interno della cartella di installazione "msysgit", non è possibile crearne una . Una volta che si lascia cadere questi due file chiave lì e ripetere l'intero processo, tutto è andato liscio e la mia domanda ottenuto implementato nella nuvola Heroku e il mondo è di nuovo un posto migliore in cui vivere.

Nella mia caso, devo trovare dove è stato installato git.exe, che è C:\Program Files\Git\.Così qui sono i passi:

  1. creare la cartella .ssh all'interno C:\Program Files\Git\
  2. Copia id_rsa e id_rsa.pub dalla cartella home (C:\Users\username\.ssh\) per C:\Program Files\Git\.ssh\.
  3. Riprovare con C:\dev\heroku\sample-app> git push heroku master.
+0

Funziona! Molte grazie. –

Problemi correlati