git修改提交作者和邮箱

作用一名程序员,我们会经常混迹与不同的代码仓库,时常不同仓库会有作者信息验证。比如公司内建的gitlab一般会要求统一使用公司内部的域账号签名;github要求使用github账号签名等。因此,很容易犯在不同库中提交代码发现默认配置的author信息没有变更,结果push被拒绝。

下面介绍几种常用的解决方式,当然最终还是需要养成切换代码库检查author信息的习惯,主动配置

// 设置全局
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"

解决方法一

如果只需要最近一次提交,那么很简单直接使用git commit –amend就可以搞定

git commit --amend --author="NewAuthor <[email protected].com>"

解决方法二

如果是多个修改,那么就需要使用到git filter-branch这个工具来做批量修改 
为了方便大家使用,封装了一个简单的shell脚本,直接修改[XXX]中的变量为对应的值即可

#!/bin/sh

git filter-branch --env-filter ‘

an="$GIT_AUTHOR_NAME"
am="$GIT_AUTHOR_EMAIL"
cn="$GIT_COMMITTER_NAME"
cm="$GIT_COMMITTER_EMAIL"

if [ "$GIT_COMMITTER_EMAIL" = "[Your Old Email]" ]
then
    cn="[Your New Author Name]"
    cm="[Your New Email]"
fi
if [ "$GIT_AUTHOR_EMAIL" = "[Your Old Email]" ]
then
    an="[Your New Author Name]"
    am="[Your New Email]"
fi

export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"
‘

原文地址:https://www.cnblogs.com/toSeeMyDream/p/12012573.html

时间: 2024-07-30 03:06:00

git修改提交作者和邮箱的相关文章

git 修改提交邮箱以及用户名-亲测

一.查看git配置 $ git config --list     此命令会列出所有GIT当时能找到的配置           ... 查看 列表项 [email protected]        邮箱          user.name=123                         用户名 二.修改邮箱和用户名 1.重新设置邮箱和用户名 $ git config --global user.email"[email protected]" $ git config --

Git修改提交注释

修改本地最近一次已提交的注释 git commit --amend 如果已经上传到了github上,因此github的提交和已修改的提交不一样,推送到远程可以用下面命令强制修改 git push origin master --force

关于git修改和查看用户名邮箱

git 查看/修改用户名.密码 查看用户名和邮箱地址: $ git config user.name $ git config user.email 修改用户名和邮箱地址: $ git config --global user.name "username" $ git config --global user.email "email" 原文地址:https://www.cnblogs.com/llfy/p/9375506.html

git修改提交历史中的author信息

当次提交 当次的提交显示指定提交者信息: 1 git commit -m "Initial commit" --author="mn <[email protected]>" 修改上次提交 修改已经提交的commit的信息: 1 git commit --amend --author="mn <[email protected]>" 修改历史提交 如果是上几次的提交呢?可以利用rebase来实现,如: 1 git reba

git修改commit作者名

查看用户名和地址 git config user.name git config user.email 修改用户名和地址 git config --global user.name "your name" git config --global user.email "your email" 转自 https://www.jianshu.com/p/d24e791a7679 原文地址:https://www.cnblogs.com/caolyl/p/10607043

修改GIT已提交的用户名和邮箱

修改GIT已提交的用户名和邮箱 原文:https://help.github.com/en/github/using-git/changing-author-info 说明 要更改在现有提交中记录的名称和/或电子邮件地址,必须重写Git存储库的整个历史. 警告:此操作会破坏存储库的历史记录.如果您正在与其他人协作创建存储库,则重写已发布的历史记录被认为是不好的做法.你应该只在紧急情况下这样做. 使用脚本更改存储库的Git历史记录 使用下面的脚本,更改已提交数据的author或committer.

Git批量修改提交历史

有些时候我们可能需要批量修改提交历史,当然了,最近一次的提交历史很简单我们可以利用 git commit --amend 来进行最近一次提交的修改,如果你此时想要更新作者提交时间等也可以在amend之后加上 --date="$(date -R)" 但是很多时候我们需要更改的往往不是一条两条提交信息,有些时候需要批量更改提交历史,这个时候我们就可以用到git rebase -i(--interactive)这个选项了. 首先第一步,你需要确定你需要更改历史的范围,比如A-B-C-D,你此

git 修改作者信息的方法

git 修改作者信息的方法 单个仓库里个人信息 git config user.name "姓名" git config user.email "邮箱" 推荐使用全局用户信息: git config --global user.name "姓名" git config --global user.email "邮箱" 原文地址:https://www.cnblogs.com/cag2050/p/9870408.html

【转】git修改文件后,提交到远程仓库

原文地址:https://blog.csdn.net/nly19900820/article/details/73613654 修改文件后,怎么提交到远程仓库1.git status 查看git是否有修改内容需要提交2.git add 指向需要提交的内容文件3.git commit 提交到本地库4.git push origin master 提交到远程仓库 下面是操作图解: 1.git status      查看当前状态命令  图中modified:图中红色的文件路径告诉你有哪些文件有修改