Verwenden Sie git add -i
um soeben hinzugefügte Dateien aus Ihrem kommenden Commit zu entfernen. Beispiel:
Hinzufügen der Datei, die Sie nicht wollten:
$ git add foo
$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: foo
#
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
# [...]#
Interaktives Hinzufügen, um das Hinzufügen rückgängig zu machen (die Befehle, die hier bei git eingegeben werden, sind "r" (revert), "1" (erster Eintrag in der Liste, die revert anzeigt), "return", um den Modus "revert" zu verlassen, und "q" (quit):
$ git add -i
staged unstaged path
1: +1/-0 nothing foo
*** Commands ***
1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked
5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now> r
staged unstaged path
1: +1/-0 nothing [f]oo
Revert>> 1
staged unstaged path
* 1: +1/-0 nothing [f]oo
Revert>>
note: foo is untracked now.
reverted one path
*** Commands ***
1: [s]tatus 2: [u]pdate 3: [r]evert 4: [a]dd untracked
5: [p]atch 6: [d]iff 7: [q]uit 8: [h]elp
What now> q
Bye.
$
Das war's! Hier ist der Beweis dafür, dass "foo" wieder auf der Liste der nicht verfolgten Personen steht:
$ git status
# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
# [...]
# foo
nothing added to commit but untracked files present (use "git add" to track)
$
57 Stimmen
Beginnend mit Git v1.8.4 werden alle folgenden Antworten, die
HEAD
ohead
können nun@
anstelle vonHEAD
stattdessen. Siehe diese Antwort (letzter Abschnitt) um zu erfahren, warum Sie das tun können.5 Stimmen
Ich habe eine kleine Übersicht erstellt, die alle Möglichkeiten zum Aufheben einer Datei zeigt: stackoverflow.com/questions/6919121/
8 Stimmen
Wenn Sie Eclipse verwenden, ist es so einfach wie das Entfernen der Markierung der Dateien im Dialogfeld "Übertragen".
3 Stimmen
Dies ist eine großartige Ressource direkt von Github: Wie man (fast) alles mit Git rückgängig macht
4 Stimmen
Bevor Sie eine neue Antwort schreiben, bedenken Sie, dass es bereits mehr als 25 Antworten auf diese Frage gibt. Vergewissern Sie sich, dass Ihre Antwort einen Beitrag leistet, der nicht in den vorhandenen Antworten enthalten ist
0 Stimmen
Ich schaffe das immer, indem ich
git reset <file_name>
. Weitere Informationen finden Sie unter dieser Artikel .0 Stimmen
Wenn Leser die grafische Benutzeroberfläche verwenden möchten, können Sie mit der rechten Maustaste auf eine Datei klicken und auf "Zurücksetzen" oder "Unstage" klicken.
0 Stimmen
git rm --cached <file>
entschärft und entschärft (zum Entfernen bei der nächsten Übertragung markiert) eine bestimmte Datei, währendgit reset HEAD <file>
nur unstages die Datei0 Stimmen
Für Leute, die mit großen Repos arbeiten, können Sie auch einfach den Git-Hinzufügungsprozess abbrechen und es wird automatisch zurückgesetzt.