Ich habe hier herum gesucht, um nach einer Antwort zu suchen, und es scheint, dass ich nur falsche Annahmen darüber machen kann, wie git Zweige funktionieren sollen.Untracked Dateien zwischen den Zweigen in Git
Ich habe meine master
Zweig und ich habe eine Feature-Zweig namens profiles
erstellt, wo ich einige spezifische Arbeit zu Profilen tun. Während ich an Profilen arbeitete, habe ich 5 oder 6 Dateien geändert und weitere 5 oder 6 neue Dateien hinzugefügt. Ich musste zurück in den Zweig master
wechseln, um einen schnellen Fehler zu beheben, und bemerkte, dass alle neuen Dateien und geänderten Dateien darin enthalten waren. Ich denke, das macht Sinn, da git nicht entfernte Dateien aus dem Zweig master
entfernt und sie für meinen Zweig profiles
zurückbringt, da sie tatsächlich nicht geparkt sind. Aber was ist mit den Änderungen an bestehenden Dateien? Warum tauchen sie im Master-Zweig auf?
Was ist die beste Vorgehensweise hier. Ich bin noch nicht bereit, die Änderungen lokal zu übernehmen. Sollte ich all diese Änderungen einfach verdecken, wechseln Sie zu master
, machen Sie den kleinen Fehler, wechseln Sie zurück zu profiles
, dann wenden Sie das Versteck erneut an?
Jede Hilfe wird geschätzt. Danke
Ich habe eine schreckliche Erinnerung und mag Git verwenden, um zu sehen, wo ich auf meiner Arbeit bin (und mit magit ist es noch einfacher, und ist in meinem Workflow integriert). Wirklich, Ihre Lösung macht jedoch mehr Sinn. Begib dich einfach öfter. Ich muss meinen Workflow ein wenig optimieren. Danke – Clarence
Nur zur Klarstellung, gibt es einen beabsichtigten Unterschied zwischen 'git reset --soft HEAD ~; git reset' und 'git reset HEAD ^'? Soweit ich das sehen kann, setzen beide HEAD und den Index auf das Elternelement des "WIP" -Commits zurück, das bereit ist, ein echtes Commit zu machen, indem einige oder alle Änderungen des Arbeitsbaums verwendet werden, aber vielleicht habe ich eine Feinheit verpasst. –
@Charles Bailey: "--soft berührt weder die Indexdatei noch den Arbeitsbaum, sondern verlangt, dass sie in einer guten Reihenfolge sind. Dadurch bleiben alle geänderten Dateien" Änderungen festgeschrieben ", wie der Git-Status sagen würde es." Wenn du "git reset HEAD ^" verwendest, bekommst du das nicht fatal: Kann während der Zusammenführung keinen Soft-Reset durchführen. – maletin