Fügen Sie einem vorherigen Commit eine Datei hinzu
Wenn Sie den Zweig, an dem Sie arbeiten, bereits verschoben haben, lesen Sie bitte zuerst die Manpages . Bitte beachten Sie insbesondere:
Das Wiederherstellen (oder jede andere Form des Umschreibens) eines Zweigs, auf dem andere basieren, ist eine schlechte Idee: Jeder, der ihm nachgeschaltet ist, muss seinen Verlauf manuell korrigieren.
Wenn Sie Ihren Zweig jedoch nicht geschoben haben, bereiten Sie sich darauf vor, die Gefahrenzone zu betreten .
Suchen Sie den Commit-Hash
Zunächst müssen Sie den Commit-Hash des Commits kennen, zu dem Sie hinzufügen möchten. Dies wird durch gezeigt git log. Sie wollen eigentlich die commit angeben vor dem einen zu dem Sie hinzufügen möchten. (Sie können sich das als Startindex für das Commit-Segment vorstellen, das Sie ändern möchten.) Sie können sicherstellen, dass Sie das richtige Commit haben, indem Sie es ausführen git log -1 HEAD~n. Wobei 'n' eine Ganzzahl ist, die Sie erhöhen, bis Sie das richtige Commit haben. Oder du könntest zählen, nein wirklich.
Aber wenn Sie zählen, bestätigen Sie zumindest, dass Sie das richtige Commit haben git log -1 HEAD~5oder was auch immer Ihre Zählung war. Sie sollten das Commit, zu dem Sie hinzufügen möchten, NICHT sehen.
GEFAHR , heh
Jetzt können Sie loslegen git rebase -i HEAD~5. Oder was auch immer Ihr Commit-Hash ist. Dadurch wird Ihr bevorzugter Texteditor und eine zu bearbeitende Datei angezeigt. Die Datei ist die Aufgabenliste für den Befehl rebase. Die Kommentare in der Datei geben an, welche Optionen Sie haben. Suchen Sie einfach die Zeile mit dem Commit, zu dem Sie hinzufügen möchten, und ändern Sie in dieser Zeile "Auswählen" in "Bearbeiten". Speichern und schließen Sie nun die Datei.
Die Rebase wird beendet, sobald das Commit erreicht ist, das Sie bearbeiten sollen. Führen Sie a aus git status, um die zusätzlichen Informationen anzuzeigen. Stellen Sie Ihre Dateien so bereit, dass sie dem Commit mit git add .oder wie auch immer die Dateinamen hinzugefügt werden.
Dann tu es git commit --amend. Dadurch wird das Commit geändert, das Sie bearbeiten möchten.
Zum Schluss laufen git rebase --continue.
Im Zweifelsfall können Sie unter Linux mehr herausfinden, indem Sie die von man git-rebaseoder ausgegebenen Dokumente lesen git --help rebase.