Ich versuche, git add --interactive
einige Änderungen selektiv zu meinem Index hinzuzufügen, erhalte jedoch ständig die Meldung "Ihr bearbeiteter Teil gilt nicht. Erneut bearbeiten ...". Ich erhalte diese Meldung auch dann, wenn ich die Option e wähle und meinen Editor sofort speichere / schließe. Mit anderen Worten, ohne das Stück überhaupt zu bearbeiten, gilt der Patch nicht.
Hier ist das genaue Beispiel, das ich verwende (ich versuche, eine kleine Demo zusammenzustellen):
Originaldatei:
first change
second change off branch
third change off branch
second change
third change
fourth change
Neue Datei:
Change supporting feature 1
first change
second change off branch
third change off branch
second change
third change
fourth change
bug fix 1
change supporting feature 1
Ich versuche zu zeigen, wie man verwendet, git add --interactive
um nur die Zeile "Bugfix 1" zum Index hinzuzufügen. Wenn ich das interaktive Hinzufügen der Datei ausführe, wähle ich den Patch-Modus. Es präsentiert mich mit
diff --git a/newfile b/newfile
index 6d501a3..8b81ae9 100644
--- a/newfile
+++ b/newfile
@@ -1,6 +1,9 @@
+Change supporting feature 1
first change
second change off branch
third change off branch
second change
third change
fourth change
+bug fix 1
+change supporting feature 1
Ich antworte mit Split, gefolgt von "Nein", um das erste Stück anzuwenden. Das zweite Stück versuche ich zu bearbeiten. Ich habe ursprünglich versucht, das Endergebnis zu löschen - das hat nicht funktioniert. Das Stück ganz alleine zu lassen, funktioniert auch nicht, und ich kann nicht herausfinden, warum.
-
Zeilen am Anfang von Zeilen hinzufügen , die in der Datei zunächst nicht vorhanden sind. Es ist ein Unterschied und kann keine Zeilen löschen, die noch nicht vorhanden sind. Also, wenn eine Zeile im Diff mit beginnt+
und Sie sie in-
Git ändern, geht WTF? weil jetzt die zum Entfernen markierte Zeile zunächst nicht vorhanden ist (stattdessen wurde diese Zeile zum Hinzufügen markiert, und wenn eine zum Hinzufügen markierte Zeile zum Entfernen markiert ist, kann git eine Zeile nicht entfernen, die noch nicht in der Datei enthalten ist). .