Ein Mitarbeiter und ich arbeiten beide gerade in der Meisterbranche. Ich habe Code in meinem Arbeitsbaum, den ich nicht committen möchte (Debugging-Anweisungen und ähnliches). Nun, wenn er Änderungen an einige diese gleichen Dateien verpflichtet, ich kann sie nicht fusionieren:Wie man git merge handle nicht festgeschriebene Änderungen an meinem Arbeitsbaum machen?
$ git merge origin/master
Updating 1b8c5c6..eb44c23
error: Entry 'blah.java' not uptodate. Cannot merge.
Von einem Subversion-Hintergrund, ich bin es gewohnt, mein Arbeits Baum automatisch mit zusammengeführt, wenn ich ziehe Änderungen aus dem Repository und wenn es Konflikte gibt, löse ich sie manuell auf.
Der schnellste Weg, fand ich dies in git zu tun ist:
$ git stash
$ git merge origin/master
$ git stash pop
Im Wesentlichen meiner unbestätigten Änderungen zu entfernen, die Zusammenführung zu tun und dann erneut die Anwendung der Änderungen. Wie kann ich Merge mitteilen, um meinen Arbeitsbaum automatisch mit den Änderungen zu verbinden, die ich versuche zu ziehen?
Was ist, wenn Sie Zusammenführungskonflikte haben? Was wäre, wenn Sie Konflikte in schmutzigen Dateien (Dateien, die Sie geändert haben) hätten? Siehe auch "Spaß mit lokalen Änderungen zu halten" bei Junio C Hamano (git Betreuer) Blog: http://gitster.livejournal.com/29060.html –
Danke für den Link. Wiederum, in der überwiegenden Mehrheit der Fälle, erwarte ich entweder keine oder nur sehr kleine Konflikte, die mir nichts ausgemacht haben. Ich laufe das gleiche Risiko von Konflikten, wenn ich meine schmutzigen Dateien trotzdem begehe, außer dann muss ich die Mühe machen, sie danach zu entmachten. –
In Verbindung stehende Frage: http://stackoverflow.com/questions/18529206/when-do-i-need-to-do-git-pull-before-or-after-git-add-git-commit – leo9r