2015-08-03 16 views
5

Ich versuche, ein Szenario zu beheben, das erscheint scheinbar zufällig, alle paar Tage oder so.Git leer Commit mit keine Änderungen

Ich wechsle zu einer Verzweigung, die ich nicht berührt habe, und mir wird gesagt, dass ich der entfernten Zweigstelle "voraus bin", obwohl ich in dieser Branche keine Commits gemacht habe. Ich versuche dann herauszufinden, welche lokalen Änderungen ich vorgenommen habe, und finde keine. In der Vergangenheit scheint das Problem durch eine git push Lösung gelöst zu werden, aber es macht uns extrem nervös, blindlings wer-weiß-was-willy-nilly zu drücken, ohne das Grundproblem zu verstehen. Ich habe unten einen Befehl eingefügt, der meiner Meinung nach meine Verwirrung veranschaulicht. Wenn ich der Fernbedienung voraus bin, sollte nicht die git diff meine Änderungen zurückgeben? Ich denke, dass ich mit der Fernbedienung auf dem neuesten Stand bin, was ich mit den git fetch/git pull Befehlen zu zeigen versuche.

$ 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==== 

Weiß jemand, was hier vor sich geht?

+0

aktualisiertes Beispiel. Kein Unterschied. – GWLlosa

+2

Dies ist wahrscheinlich ein Merge-Commit. Diese Commits können auftreten, wenn der Verlauf des Remote-Repos und des lokalen Repos divergiert ist und Sie einen "Git-Pull" ausführen. Mit 'git log --graph' können Sie den Commit-Verlauf sehen und dies bestätigen. –

Antwort

1

Laut mir scheint es, dass es eine Zusammenführung von Git zu begehen. Sie können die Protokolle überprüfen und den Kommentar für das Commit überprüfen. Sie können leicht erkennen, ob es sich um eine Zusammenführung handelt oder nicht.

+0

Dies scheint der Fall zu sein. Ich denke, als Nebeneffekt unserer Einstellung "merge.ff" auf false erzeugt git pull jetzt Merge-Commits. – GWLlosa

Verwandte Themen