2014-06-24 5 views
6

Ich habe aus Versehen viele Änderungen vorgenommen, einschließlich neuer Dateien, die ich nicht übernehmen möchte.Starte nur neue Dateien mit Git

Wie kann ich nur die neuen Dateien deaktivieren oder zurücksetzen?

Ich bin nicht auf der Suche nach einem Skript jeder Art; Ich bin auf der Suche nach Core-Git-Funktionalität, die hier auf SO unter einem aussagekräftigen Thementitel veröffentlicht und dokumentiert werden soll.

Antwort

6

Eine Möglichkeit, Sie in der Lage sein können, dies zu tun ist, um unstage/alles zurückgesetzt und dann wieder Stufe nur das, was man wollte:

git reset HEAD ./ 
git add -u 
# -u stages changes to tracked files, and will not stage new files. 
+0

so ziemlich die Art und Weise ist. Beachten Sie, dass dies ein 'reset --mixed' ist und geschrieben werden kann' git reset --mixed HEAD - .', was explizit bedeutet, dass Sie 'HEAD' in' HEAD' mit einem Pfadnamen von 'HEAD' verschieben möchten '.'. Das Verschieben von "HEAD" in "HEAD" ist selbst ein No-Op, also hat nur der Index-Reset-Teil (über '--mixed') irgendeine Wirkung, und der angegebene Pfad ist' .', das aktuelle Verzeichnis (alle seine Dateien und alle Unterverzeichnisse und ihre Dateien rekursiv). – torek

+1

Hinweis: Vor dem ersten Festschreiben gibt es keinen HEAD, auf den "zurückgesetzt" werden soll. In diesem Fall wird "git rm --cached -r." Alles auflösen. –

Verwandte Themen