every blog every motto: You can do more than you think.
https://blog.csdn.net/weixin_39190382?type=blog
0. 前言
修改git作者和提交者信息
1. 正文
1.1 前提
1.1.1 作者和提交者
作者就是我们git log看到的信息,如下:
其修改方式参考:文章->修改用户信息
作者和提交者一般默认相同,即我们本地配置的git账号。
但若修改了author,提交者信息是不会随之改变的,如下图所示(二者都已修改):
1.2 修改提交者
1.2.1 方法一
说明: 这个方法一般在我们提交之间
A. 查看
$ git config user.name
$ git config user.email
B. 修改
全局
# 设置全局
git config --global user.name "Author Name"
git config --global user.email "Author Email"
当前项目仓库
# 或者设置本地项目库配置
git config user.name "Author Name"
git config user.email "Author Email"
1.2.1 方法二
修改历史提交者
- OLD_EMAIL 为历史邮箱,无需name,用邮箱搜索内容
- CORRECT_NAME,CORRECT_EMAIL 为希望修改后提交人和提交邮箱
git filter-branch --env-filter '
OLD_EMAIL="old email@gg.com"
CORRECT_NAME="new name"
CORRECT_EMAIL="new eamail@example.com"
if [ "$GIT_COMMITTER_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_COMMITTER_NAME="$CORRECT_NAME"
export GIT_COMMITTER_EMAIL="$CORRECT_EMAIL"
fi
if [ "$GIT_AUTHOR_EMAIL" = "$OLD_EMAIL" ]
then
export GIT_AUTHOR_NAME="$CORRECT_NAME"
export GIT_AUTHOR_EMAIL="$CORRECT_EMAIL"
fi
' --tag-name-filter cat -- --branches --tags
根据填的old email ,所有old email相关的信息都变了,如下:
参考
[1] https://blog.csdn.net/weixin_39190382/article/details/128778119
[2] https://blog.csdn.net/zjy_love_java/article/details/113284685#:~:text=git%20%E5%91%BD%E4%BB%A4%E4%BF%AE%E6%94%B9%E4%BB%A3%E7%A0%81%E6%8F%90%E4%BA%A4%E4%BA%BA%201%201.%20git%20log%20%E6%9F%A5%E7%9C%8B%E6%8F%90%E4%BA%A4%E8%AE%B0%E5%BD%95%202,2.%20%E8%AE%BE%E7%BD%AE%E5%85%A8%E5%B1%80%E6%8F%90%E4%BA%A4%E4%BA%BA%E5%92%8C%E6%8F%90%E4%BA%A4%E9%82%AE%E7%AE%B1%203%203.%20%E8%AE%BE%E7%BD%AE%E9%A1%B9%E7%9B%AE%E6%8F%90%E4%BA%A4%E4%BA%BA%E5%92%8C%E6%8F%90%E4%BA%A4%E9%82%AE%E7%AE%B1%204%204.%20%E4%BF%AE%E6%94%B9%E5%8E%86%E5%8F%B2%E8%AE%B0%E5%BD%95%E6%8F%90%E4%BA%A4%E4%BA%BA