Utilisez le rebasement interactif :
git rebase -i SHA-OF-FIRST-COMMIT-IN-BRANCH
Cela ouvrira quelque chose comme ceci dans votre $EDITOR :
pick 8ac4783 folders and folders
pick cf8b1f5 minor refactor
pick 762b37a Lots of improvement. Folders adn shit.
pick 3fae6e1 Be ready to tableview
pick b174dc0 replace folder collection view w/ table view
pick ef1b65b more finish
pick ecc407f responder chain and whatnot
pick 080a847 play/pause video
pick 6719000 wip: movie fader
pick c5f2933 presentation window fade transition
# Rebase e6f77c8..c5f2933 onto e6f77c8
#
# Commands:
# p, pick = use commit
# e, edit = use commit, but stop for amending
# s, squash = use commit, but meld into previous commit
#
# If you remove a line here THAT COMMIT WILL BE LOST.
# However, if you remove everything, the rebase will be aborted.
#
Donc ce que vous faites est simplement de supprimer la ligne contenant le commit de débogage, d'écrire le fichier et de fermer votre éditeur, et git vous dira quelque chose du genre :
Successfully rebased and updated refs/heads/master.
Maintenant vous pouvez juste fusionner cette branche avec master.
MISE À JOUR : Il convient de noter que la modification de l'historique à l'aide de la fonction rebase
debe seulement se produisent sur les branches privées. Si cette branche a été exposée au public, utilisez git revert
comme proposé par l'autre répondant.