2070 Stimmen

Wie verstaut man eine nicht verfolgte Datei?

Ich habe Änderungen an einer Datei und eine neue Datei und möchte git stash verwenden, um sie wegzulegen, während ich zu einer anderen Aufgabe wechsle. Aber git stash selbst speichert nur die Änderungen an der bestehenden Datei; die neue Datei verbleibt in meinem Arbeitsbaum und bringt meine zukünftige Arbeit durcheinander. Wie kann ich diese nicht verfolgte Datei auslagern?

58 Stimmen

Wenn Sie nur nicht verfolgte Dateien in Ihrem Versteck haben, sieht es so aus, als wäre es ein leeres Versteck, wie in git stash show gibt nichts zurück und man könnte versucht sein, es zu löschen (wie ich es gerade getan habe, obwohl es ein nützliches Skript enthielt, das ich vor einigen Monaten geschrieben habe wie man einen verlorenen Vorrat wiederfindet )

3voto

shubham mishra Punkte 1043

Sie können dies einfach mit folgendem Befehl tun

git stash save --include-untracked

ou

git stash save -u

Mehr über git stash Besuchen Sie diesen Beitrag (Hier klicken)

3voto

Mártin Alcalá Punkte 1700

Nehmen wir an, die neue und nicht verfolgte Datei heißt: "views.json". Wenn Sie die Verzweigung ändern möchten, indem Sie den Zustand Ihrer Anwendung speichern, gebe ich im Allgemeinen ein:

git add views.json

Dann:

git stash

Und es würde versteckt werden. Dann kann ich einfach den Zweig mit

git checkout other-nice-branch

3voto

Ali Raza Punkte 401

Wie verstaut man eine nicht verfolgte Datei?

git stash --include-untracked

2voto

Chandraprakash Punkte 396

Stashing ist in VS 2019 und späteren Versionen verfügbar.

  1. Zum Fenster Git-Änderungen gehen Ctrl + Alt + F7
  2. Drücken Sie nun die Dropdown-Taste neben Commit All o Commit staged um die Aufbewahrungsoptionen zu sehen

enter image description here

Wenn Sie nicht verfolgte Dateien wie Git ignored files o Files which are not included into project dann wählen Sie diese Option

enter image description here

Lesen Sie diese Antwort für die vollständige Verwendung von Git Stash in Visual Studio: https://stackoverflow.com/a/69905607/4391394

1voto

DrStrangepork Punkte 2702

Es gibt hier mehrere richtige Antworten, aber ich wollte darauf hinweisen, dass für neue ganze Verzeichnisse, 'git add path' se PAS arbeiten. Wenn Sie also einen Haufen neuer Dateien in Ungespurter Weg und dies tun:

git add untracked-path
git stash "temp stash"

wird dies mit der folgenden Meldung unterdrückt:

Saved working directory and index state On master: temp stash
warning: unable to rmdir untracked-path: Directory not empty

und wenn Ungespurter Weg der einzige Pfad ist, den Sie speichern, ist das Versteck "temp stash" ein leeres Versteck. Korrekt ist es, den gesamten Pfad hinzuzufügen, nicht nur den Verzeichnisnamen (d. h. den Pfad mit einem "/" abzuschließen):

git add untracked-path/
git stash "temp stash"

0 Stimmen

Zumindest auf meinem System ist Ihre Annahme falsch. Es funktioniert auch ohne den Schrägstrich! Leere Verzeichnisse werden sowieso ignoriert. (macos git 2.6.2)

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X