Cambiar el nombre y el email en el log de git

tatai

Seguro que no es la primera vez que, usando git, inicializas el repositorio, haces unos cuantos commit y para cuando te das cuenta, ya tienes varios Usuario <tatai@localhost> en el log de cambios. Evidentemente, usas git config para cambiar el user.name y el user.email pero el texto sigue ahí cuando pones git log.

Antes de ponerlo en un repositorio público como por ejemplo github, hay que cambiar esto y lo haremos de una forma muy sencilla usando git filter-branch. Este comando nos permite hacer multitud de diferentes cambios sobre todas las ramas en el proyecto y, entre otras cosas, cambiar estos dos datos que nos hacen falta.

Supongamos que los datos que queremos poner son:

  • Usuario: Tatai
  • E-mail: tatai@example.com

Entonces, el comando que tenemos que usar es:

git filter-branch --env-filter 'export GIT_AUTHOR_NAME="Tatai";GIT_AUTHOR_EMAIL="tatai@example.com"'

Tras ejecutar el comando, veremos como se reescriben todos los commits.

En caso de querer cambiar únicamente ciertos commits y no todos, podemos añadir al final del comando el intervalo, por ejemplo, para los 10 últimos commits: HEAD~10..HEAD


¿Te ha parecido útil este post? Puedes ayudarme con unas monedillas usando dropcoin

Leave a Reply