2012-06-18 14 views
18

Su github, ho biforcato una vecchia versione di un altro progetto. Ho apportato alcune modifiche e sto provando a spingerle sulla mia forchetta su github. Ho eseguito le modifiche localmente, poi ho provato git push, ma questo mi dice semplicemente "Tutto aggiornato". Quando sfoglio il progetto su github, tuttavia, non è cambiato nulla: mostra ancora i file (dall'ultima versione) sulla mia forcella, non modificati. Come posso inviare le modifiche al mio account github?non può passare a github: tutto aggiornato

(Mi rendo conto che questa non è una gran quantità di informazioni ... che altro posso dire? Ho la sensazione che sia perché sto modificando i file direttamente in (home)/git/(progetto) .. .?)

+2

Verificare se ci si trova nella filiale corretta. git log --graph --all --decorate --pretty = oneline e git remote show origin può essere utile – tomgi

+0

Qual è l'output di 'git branch -v' e' git remote -v'? – Stefan

+1

'Tutto aggiornato 'significa che non è stato premuto nulla (perché non è stato aggiunto nulla), hai' git add' e 'git commit' prima di' git push'? – KurzedMetal

risposta

9

git branch -v indica che il mio commit era attivo (nessun ramo). Per quanto riguarda l'add, inizialmente ho commesso i cambiamenti attraverso Eclipse (con il plugin git) ... quando faccio git add dalla riga di comando, non sembra di fare nulla

Ciò significa che ci si trova in una modalità DETACHED HEAD.
È possibile aggiungere e confermare, ma dal punto di vista del repository upstream (cioè dal repository GitHub), nessun nuovo commit è pronto per essere inviato.
Esistono vari modi per includere il commit locale (distaccato HEAD) in un ramo, che sarà quindi possibile premere successivamente.
See:

Il PO menzioni questo articolo, al fine di risolvere la situazione:
"git: what to do if you commit to no branch"

tutti abbiamo bisogno fare è controllare il ramo in cui avremmo dovuto essere ed entrare in quel commit SHA:

noti che invece di unire le SHA1 che si sarebbe in qualche modo copiato, è possibile memorizzarlo con uno script, utilizzando head=$(git rev-parse HEAD):
Vedere "git: reliably switching to a detached HEAD and then restore HEAD later, all from a script".
Quindi è possibile unire quello distaccato HEAD indietro al ramo destro.

+0

Sì, questo è quello che ho appena capito. [Questo mi ha mostrato come risolverlo.] (Http://edspencer.net/2009/10/git-what-to-do-if-you-commit-to-no-branch.html/comment-page-1 – Kricket

+0

@KelseyRider Ho aggiunto un riferimento a uno script che memorizzerebbe per te l'HEAD SHA1 distaccato. – VonC

7

Dopo aver modificato i file, è necessario

git add 

loro prima di

git commit 

.

+0

Ha detto che ha commesso le modifiche localmente – tomgi

+0

Grazie Themroc! Dopo git add e git commit e git push origin ha funzionato. – Marin

3
git commit 

vi mostrerà quali file sono sul computer locale, rimuovere il commento ciò che si desidera caricare e

git push origin master 

Perché git add * non ha funzionato per me (anche se non ha restituito errori).

-1

Nella recente versione git devono configer dettagli utente git config -g user.name "nome"

git config -g user.email "[email protected]" 

Questo risolto il mio problema

1

Non certo perché la gente sta votando giù il ragazzo con la corretta risposta. Per me aggiungere la mia e-mail e il nome ha risolto il problema. Sebbene i comandi non siano corretti.

git config --global user.email "[email protected]" 
git config --global user.name "Your Name" 
Problemi correlati