Deshacer el último commit y push en git

Si quieres dehacer el último commit de tu respositorio local:

git reset --hard HEAD~1

Si además hemos hecho push y queremos deshacerlo:

git push origin HEAD --force

NOTA: si alguien ha hecho pull después de ese push que vamos a borrar, hay que hacer más cosas. Para esto mirad la fuente de debajo.

Fuente: http://stackoverflow.com/questions/1338728/how-to-delete-a-git-commit

Configurar user y email en git por repositorio

En Git se puede configurar por defecto el usuario y correo de forma global, de hecho, es lo que se suele hacer. Esta sería la forma global:

git config --global user.name "mi nombre"
git config --global user.email "mi@correo.com"

Es muy probable que nos interese configurar estos parámetros para cada repositorio, por ejemplo, si somos el usuario Pepito en Github y Juanito en Bitbucket. Existen dos formas de hacerlo:

  • La primera es usando los mismos comandos que antes en el repositorio pero sin
    --global
    git config user.name "mi nombre"
    git config user.email "mi@correo.com"
  • La segunda forma es editando el archivo
    .git/config

    :

    [user]
    name = mi nombre
    email = mi@correo.com

Fuente: http://www.thebuzzmedia.com/git-tip-git-config-user-name-and-user-email-for-local-not-global-config/