2010-10-15 13 views
5
To [email protected]:xxx/xxxxx.git 
! [rejected]  master -> master (non-fast-forward) 
error: failed to push some refs to '[email protected]:xxx/xxxxx.git' 
To prevent you from losing history, non-fast-forward updates were rejected 
Merge the remote changes before pushing again. See the 'Note about 
fast-forwards' section of 'git push --help' for details. 

Ho ricevuto questo errore quando ho provato a inviare alcune modifiche. Quando provo a recuperare dal repository ottengoRespinto git push

From github.com:xxx/xxxxx 
* branch   master  -> FETCH_HEAD 

Cosa devo fare per risolvere questo? Sono stato praticamente solo io sul repo fino ad ora, ho avuto solo due spinte da qualcun altro. Devo fare una fusione adeguata?

+0

Hai letto la nota sugli arresti rapidi nell'aiuto, come indicato dal messaggio di errore? –

risposta

11

Il push non funziona perché i vostri riferimenti sono dietro a quelli del repository remoto. L'operazione di recupero riporta solo i contenuti e i riferimenti del repository remoto, ma non aggiorna i tuoi riferimenti alle modifiche. Quindi non fa nulla per risolvere il problema che impedisce la spinta. Dovrai eseguire un'operazione di pull o unione manuale con la versione locale dei riferimenti remoti.

+0

Sì, l'ho risolto prima di leggere la tua risposta. Il tiro lo ha risolto, ma segnerò la tua risposta come accettata. – dragosplesca

+0

'git pull' fa un' git fetch' seguito da un 'git merge' – dgnorton

+5

puoi anche fare git rebase origine/master e quindi git unire origin/master per mantenere la cronologia lineare e non troppo disordinata. –