Wenn ich git add -p someNewFile.txt
eine neue Datei (eine nicht verfolgte Datei) anprobierte, gab git einfach aus No changes.
und stoppte. Ich musste git sagen, dass ich zuerst die neue Datei verfolgen wollte.
git add -N someNewFile.txt
git add -p
Da die Datei jedoch nicht verfolgt wurde, wurde sie als ein riesiges Stück angezeigt, das nicht geteilt werden konnte (weil alles neu ist!). Also musste ich das Stück in kleinere Teile zerlegen. Wenn Sie damit nicht vertraut sind, lesen Sie diese Referenz, um loszulegen.
Update - Hunk-Bearbeitungsinformationen
Ich wollte dies aktualisieren, falls die obige Referenz nicht mehr angezeigt wird. Da die neue Datei nicht verfolgt wird, git add -p
wird jede Zeile in der Datei als neue Zeile in einem Stück angezeigt. Sie werden dann gefragt, was Sie mit diesem Stück tun möchten, und erhalten die folgende Eingabeaufforderung:
Stage this hunk [y,n,q,a,d,/,e,?]?
Angenommen, Sie möchten nicht den gesamten Hunk (und damit die gesamte Datei; da ich nicht sicher bin, warum Sie ihn git add -p
in diesem Fall verwenden möchten?) e
Festschreiben, möchten Sie die Option angeben , um git mitzuteilen, dass Sie ihn bearbeiten möchten das Stück.
Sobald Sie git mitteilen, dass Sie das Stück bearbeiten möchten, sollte es Sie in den Editor Ihrer Wahl einfügen, damit Sie Ihre Änderungen vornehmen können. Allen Zeilen sollte ein Präfix vorangestellt werden, +
und git hat #
am Ende der Datei einige erläuternde Kommentare (vorangestellt mit a ). Löschen Sie einfach alle Zeilen, die Sie beim ersten Festschreiben der Datei nicht möchten. Speichern Sie dann den Editor und beenden Sie ihn.
Gits Erklärung der Hunk-Optionen von Git:
y - stage this hunk
n - do not stage this hunk
q - quit; do not stage this hunk or any of the remaining ones
a - stage this hunk and all later hunks in the file
d - do not stage this hunk or any of the later hunks in the file
g - select a hunk to go to
/ - search for a hunk matching the given regex
j - leave this hunk undecided, see next undecided hunk
J - leave this hunk undecided, see next hunk
k - leave this hunk undecided, see previous undecided hunk
K - leave this hunk undecided, see previous hunk
s - split the current hunk into smaller hunks
e - manually edit the current hunk
? - print help
git add -N
tun sollen, werden nur die angegebenen nicht verfolgten Dateien zum Index hinzugefügt, jedoch ohne Inhalt.