Ответ 1
Во-первых, предотвратите создание слияния с фиксацией:
git merge --no-commit …
Затем выполните фиксацию вручную:
git commit --author="A. U. Thor <[email protected]>"
Есть ли опция, например --author из git -commit для git -merge?
Мы поддерживаем промежуточную среду, в которой должны быть выполнены некоторые изменения. Некоторые ограничения заставляют нас использовать только одного пользователя Linux для доступа к промежуточной среде.
В любом случае, мы небольшая команда с кооперативной инициативой, и мы говорим, когда выполняем коммиты, какой из них является автором, используя параметр -author git -commit. Однако иногда нам нужно объединиться с другими ветвями, которые приводят к слиянию не-ff. Это означает, что при выполнении этого слияния выполняется фиксация.
Какой был бы лучший способ указать автора вручную для фиксации слияния в этом случае?
Во-первых, предотвратите создание слияния с фиксацией:
git merge --no-commit …
Затем выполните фиксацию вручную:
git commit --author="A. U. Thor <[email protected]>"
Вы можете --amend
авторство впоследствии, если вы уже сделали слияние. например:
git checkout master
git merge my_branch
git commit --amend --author="My Nick <[email protected]>"
git push origin master
Это работает по желанию и добавляет указанный автор к фиксации слияния. Никакой магии.:)
Попробуйте git merge --no-commit ...
, а затем git commit --author ...
Альтернативой может быть установка переменных среды GIT_AUTHOR_NAME и GIT_AUTHOR_EMAIL:
GIT_AUTHOR_NAME="A. U. Thor" GIT_AUTHOR_EMAIL="[email protected]" git merge ...