2015-08-03 25 views
5

Sto provando a risolvere uno scenario che si apre, apparentemente in modo casuale, ogni due giorni circa.Git Empty Commit senza modifiche

Passo a un ramo che non ho toccato, e mi è stato detto che sono "avanti" del ramo remoto, nonostante non abbia fatto alcun commit su questo ramo. Quindi provo a capire quali modifiche locali ho apportato e non ne trovo. In passato, fare un git push sembra risolvere il problema, ma ci rende estremamente nervosi a spingere ciecamente chi-sa-cosa, volente o nolente, senza capire il problema di fondo. Ho incluso sotto un comando che penso illustra la mia confusione. Se sono in anticipo sul telecomando, il git diff non dovrebbe restituire le mie modifiche? Penso di essere aggiornato con il telecomando, che è quello che sto cercando di mostrare con l'inclusione dei comandi git fetch/git pull.

$ echo '====FETCH====' && git fetch && echo '====PULL====' && git pull && echo 
'====STATUS====' && git status && echo '====DIFF====' && git diff && echo '==== 
DIFF ORIGIN/DEV====' && git diff origin/dev 


====FETCH==== 
====PULL==== 
Already up-to-date. 
====STATUS==== 
On branch dev 
Your branch is ahead of 'origin/dev' by 1 commit. 
    (use "git push" to publish your local commits) 

nothing to commit, working directory clean 
====DIFF==== 
====DIFF ORIGIN/DEV==== 

Qualcuno sa cosa sta succedendo qui?

+0

campione aggiornato. Nessuna differenza. – GWLlosa

+2

Questo è probabilmente un commit di unione. Questi commit possono verificarsi se la cronologia se il repository remoto e il repository locale sono divergenti e si esegue un 'git pull'. Usando 'git log --graph' dovresti essere in grado di vedere la cronologia dei commit e confermare questo. –

risposta

1

Secondo me sembra che la sua unione sia stata commessa da git. È possibile controllare i registri e controllare il commento rispetto al commit. Puoi facilmente identificare se è un commit di unione o meno.

+0

Questo sembra essere il caso. Penso che come effetto collaterale della nostra impostazione 'merge.ff' su false, git pull ora sta generando commit di unione. – GWLlosa

Problemi correlati