Modificando el historial
El historial es muy útil para consultas, pero una de las características más poderosas de Git es poder modificar el historial. Ésto es posible a través del comando git revert:
$ git revert <REVISION>
Donde REVISION puede ser cualquier objeto Git (commit branch, tag) o un rango de éstos. Git revert generará un commit exactamente inverso al (o los) commit(s) especificado(s). Por ejemplo, para deshacer los commits desde C hasta el estado actual se usa:
$ git revert C..HEAD
El directorio de trabajo quedará tal como estaba después del commit C. A pesar de ser muy útil, utilizar el SHA1 de los commits puede ser confuso, y puede provocar errores graves. Se pueden emplear etiquetas para marcar los commits que han probado ser funcionales:
$ git tag v0
Git revert es mucho más sencillo de usar. El ejemplo anterior de git revert quedaría como sigue:
$ git revert v0..HEAD