17

¿Existe una opción como --autor de git-commit para git-merge?Anular autor en git merge

Mantenemos un entorno de transición donde se deben realizar algunos cambios. Algunas limitaciones nos obligan a utilizar solo un usuario de Linux para acceder al entorno de ensayo.

De todos modos, somos un pequeño equipo con iniciativa cooperativa y le decimos al hacer commits, cuál es el autor que utiliza la opción --autor git-commit. Sin embargo, algunas veces necesitamos fusionarnos de otras ramas que resultan en una fusión no-ff. Esto implica que se realiza una confirmación al hacer esta combinación.

¿Cuál sería la mejor manera de especificar manualmente el autor para la confirmación de fusión en este caso?

Respuesta

21

En primer lugar, evitará que la fusión de la creación de la confirmación:

git merge --no-commit … 

Entonces, hacer el commit manualmente:

git commit --author="A. U. Thor <[email protected]>" 
6

Trate git merge --no-commit ... y luego git commit --author ...

9

Usted puede --amend la autoría posteriormente si ya hiciste la fusión así:

git checkout master 
git merge my_branch 
git commit --amend --author="My Nick <[email protected]>" 
git push origin master 

Esto funciona según lo deseado y agrega el autor especificado al compromiso de fusión. Sin magia :)

+0

me siento como su respuesta fue la más completa aquí, aunque sí implica que el --amend es necesario, cuando se no es estrictamente – TheMonarch

+0

No es? 'git merge' crea un commit y para cambiar el autor de ese commit tienes que' git commit --amend'. – default

0

Una alternativa podría ser establecer las variables de entorno y GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL:

GIT_AUTHOR_NAME="A. U. Thor" GIT_AUTHOR_EMAIL="[email protected]" git merge ...