it-swarm.com.de

Wie verschiebt man ein Commit in den Staging-Bereich in Git?

Wenn Sie ein Commit in den Staging-Bereich verschieben möchten, heben Sie das Commit auf, und verschieben Sie alle darin enthaltenen Änderungen in den Staging-Bereich. (Versetzen Sie den Zweig effektiv in den Zustand, in dem er sich vor dem Commit befunden hätte.) wie machst du das? Oder ist es etwas, was du nicht kannst?

Das nächste, was ich tun kann, ist, alle Dateien, die im Commit geändert wurden, an eine andere Stelle zu kopieren, den Zweig auf das Commit zurückzusetzen, bevor das Commit, das Sie in den Staging-Bereich verschieben möchten, alle Dateien verschiebt kopierte Dateien zurück in das Repository und fügte sie dann dem Staging-Bereich hinzu. Es funktioniert, aber es ist nicht gerade eine gute Lösung. Was ich tun möchte, ist, das Festschreiben rückgängig zu machen und seine Änderung in den Bereitstellungsbereich zu verschieben. Kann es gemacht werden? Und wenn ja, wie?

116
git reset --soft HEAD^

Dadurch wird Ihr Index auf HEAD^ (Das vorherige Festschreiben) zurückgesetzt, aber Ihre Änderungen bleiben im Staging-Bereich.

Es gibt einige handliche Diagramme in den git-reset Dokumenten

Wenn Sie unter Windows arbeiten, müssen Sie möglicherweise das folgende Format verwenden:

git reset --soft HEAD~1
207
Abizern

Ein einfacher Weg

  1. Festgeschriebene Dateien im Staging-Bereich

    git reset --soft HEAD^1

  2. Staging to UnSatge : (benutze "git reset HEAD ..." um die Bühne zu verlassen)

    git reset HEAD git commands.txt or git reset HEAD *ds.txt

hier enden * -> alle Dateien mit ds.txt, um die Bühne zu verlassen.

Beziehen Sie sich auf das Bild unten für Klarheit:

enter image description here