Wie stash die änderungen im aktuellen Ordner?
Ich würde gerne stash die änderungen nur die änderungen, die im aktuellen Ordner und dessen Unterordner.
Wie kann ich das erreichen?
Ich habe versucht, die offensichtlichen Ansatz - git stash .
aber es scheint nicht zu funktionieren.
Ich weiß, ich kann temporäre verpflichtet und löschen Sie Sie danach, aber ich möchte wissen, ob git stash
unterstützt Aufhänger für bestimmte Ordner.
- Was ist der Fehler, den du bekommen?
- Ich bekomme die Hilfe-Bereich für
git stash
Befehl - Das können Sie nicht.
git stash
beiseite schiebt übernommene änderungen im working tree. - Sie sind richtig in dem, was schlicht
git stash
tut. Aber mitgit stash -k
und die sorgfältige Vorbereitung von index es KANN getan werden - siehe meine Antwort. - Nicht sicher, ob es der Mühe Wert, wenn.
git stash push -- path/to/folder
sollte wohl benutzt werden - funktioniert bei mir. Bitte akzeptieren Sie die unten Antwort von @gorpacrate.- Getan. Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Funktioniert der trick für mich.
git stash push -- .
sollte den trick tun 😉git stash
wird nicht zulassen, Sie sparen teilweise Verzeichnisse mit einem einzigen Befehl, aber es gibt einige alternativen.Können Sie
git stash -p
wählen Sie nur die diffs, die Sie wollen, zu verstauen.Wenn die Ausgabe von
git stash -p
ist riesig, und/oder möchten Sie eine skriptfähige Lösung, und es ist akzeptabel, zum erstellen von temporären commits erstellen, können Sie einen commit mit allen änderungen, aber diejenigen, die sich in dem Unterverzeichnis, dann verstauen Sie Weg, die Veränderungen, vor-und Zurückspulen der commit. In code:git add
die Dateien zum staging Bereich, aber ich will Aufhänger...Sollte diese Arbeit für Sie:
Grundsätzlich, es fügt sich alles geändert, Dateien zu indizieren, außer für die Ordner (oder Dateien), die Sie wollen, zu verstauen. Dann verstauen Sie mit
-k
(--keep-index
). Und schließlich setzen Sie index zurück, wo Sie begann.git stash -k
verlassen den index intakt, so dass änderungen in der index wird nicht gelöscht, aber der neue stash haben beide die Veränderungen, die aus dem index und diejenigen, die nicht in ihm, so wird es eine "volle" stash in jedem Fall.Könnten Sie Kasse einer der git-GUI Schnittstellen wie SourceTree oder TortoiseGit, Dinge wie diese sind, was ich persönlich gehe zu Schildkröte für als es endet nur viel schneller als zu versuchen zu tun, viele Kommandozeilen-Befehle.