Override author on git merge

此生再无相见时 提交于 2019-12-21 03:19:38

问题


Is there an option like --author of git-commit for git-merge?

We maintain a staging environment where some changes must be performed. Some limitations make us to use only one linux user to access staging environment.

Anyway, we are a small team with cooperative initiative and we tell when doing commits, which one is the author using the --author git-commit option. However, some times we need to merge from other branches which result in a non-ff merge. This implies a commit is performed when doing this merge.

Which would be the best way to specify the author manually for the merge commit in this case?


回答1:


First, prevent the merge from creating the commit:

git merge --no-commit …

Then, do the commit manually:

git commit --author="A. U. Thor <au@th.or>"



回答2:


You can --amend the authorship afterwards if you already did the merge. like that:

git checkout master
git merge my_branch
git commit --amend --author="My Nick <my.adress@email.com>"
git push origin master

This works as desired and adds the specified author to the merge commit. No magic. :)




回答3:


Try git merge --no-commit ... and then git commit --author ...




回答4:


An alternative could be to set the GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL environment variables:

GIT_AUTHOR_NAME="A. U. Thor" GIT_AUTHOR_EMAIL="au@th.or" git merge ...


来源:https://stackoverflow.com/questions/9447371/override-author-on-git-merge

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!