Sie können einfach Ihren gesamten Zweig neu gründen und sowohl das Commit, mit dem die Bilder hinzugefügt wurden, als auch das Commit, mit dem sie entfernt wurden, entfernen.
git rebase -i master
Sie erhalten eine Liste der Commits. Löschen Sie die Zeilen mit den Rogue-Commits, die Sie entfernen möchten. ("dd" löscht eine Zeile in vim, dem Standardeditor. Speichern Sie dann mit ZZ.)
Die baumelnden Commits werden dann im Verlauf der natürlichen Müllabfuhr bereinigt, ein Vorgang, den Sie mit dem in Darhuuks Antwort angegebenen Befehl erzwingen können.
Bearbeiten: Dies funktioniert auch, wenn Sie in ein Remote-Repository verschoben haben, Sie müssen jedoch mit --force pushen. (Gleiches gilt für die Git-Filter-Branch-Lösung).
Beachten Sie, dass dies für jeden, der aus Ihrer Filiale gezogen hat, sehr ärgerlich ist. Sie sollten "Wiederherstellung von Upstream-Rebase" konsultieren .
Vermutlich ist Ihre ursprüngliche versehentliche Hinzufügung von Bildern Teil eines Commits, das Sie beibehalten möchten. In diesem Fall müssen Sie das Commit während der Rebase bearbeiten, um die Teile aufzuteilen, die Sie behalten möchten. Sie können dies tun, indem Sie "pick" in der Liste "rebase -i" für dieses Commit durch "e" (zum Bearbeiten) ersetzen. Der Rebase-Prozess wird hier gestoppt und Sie können das Commit mit "git commit --amend" teilen.