2016-08-16 6 views
1

ich Visual Studio 2015 und Git verwende, und ich bemerkte, ein bestimmtes Verhalten mit dem git stash Befehl, die ich nicht erwartet hatte:git stash speichert nicht neu hinzugefügte Dateien

ich einige Änderungen hatte, dass ich beiseite zu schaffen wollte. Die Änderungen beinhalteten eine neue CS-Datei, die ich über die Visual Studio-Benutzeroberfläche zu meinem Projekt hinzugefügt hatte.

Das Fenster Änderungen in Visual Studio zeigte meine Datei als ein Add, aber wenn ich Git Stash speichern, und dann Git Stash Show, enthielt die Auflistung nur meine geänderten Dateien und nicht meine hinzugefügte Datei. Meine hinzugefügte Datei blieb im Fenster Änderungen als (hinzufügen)

Gibt es eine Möglichkeit, Git Stash zu verwenden und die Dateien, die ich mit Visual Studio hinzugefügt habe, abholen?

Ich habe die --all und --intracked Optionen gesehen, aber wenn ich diese benutze, würden sie git veranlassen, auch meine Build-Artefakte, meine node_modules und Packages-Ordner zu speichern?

Antwort

3

git stash nur stashes verfolgt Dateien (zB Dateien, die in das Repository bereits hinzugefügt wurden)

Die richtige Wahl ist --include-untracked zu verwenden:

Von git help stash

Wenn die - Die Option include-untracked wird verwendet, alle nicht nachverfolgten Dateien werden ebenfalls gespeichert und dann mit git clean bereinigt, wodurch das Arbeitsverzeichnis in einem sehr sauberen Zustand verbleibt.

Eine andere Art und Weise manuell ist, um Dateien zu verfolgen (das ist, was ich in der Regel tun, um nicht noch eine andere Option erinnern):

git add . 
git stash