批量修改git log的内容

有时候提交的时候忘记了更改user.name和user.email

所以在网上找了这个脚本来完成

#!/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" = "yang1.yang@cs2c.com.cn" ]
then
    cn="wizard.Yang"
    cm="xblandy@gmail.com"
fi
if [ "$GIT_AUTHOR_EMAIL" = "yang1.yang@cs2c.com.cn" ]
then
    an="wizard.Yang"
    am="xblandy@gmail.com"
fi
 
export GIT_AUTHOR_NAME="$an"
export GIT_AUTHOR_EMAIL="$am"
export GIT_COMMITTER_NAME="$cn"
export GIT_COMMITTER_EMAIL="$cm"

这里面用到了git filter-branch命令,很强大

改完了本地的 ,push上去的时候,可能会提示有冲突不让push,

可以用 git push -f 强推。

因为我不知道怎么在服务器那边进行merge。

### 如何使用TortoiseGit修改提交日志 对于希望利用图形界面简化Git操作流程的用户来说,TortoiseGit是一个非常实用的选择。通过该工具能够便捷地管理仓库中的文件变更、查看历史记录以及调整提交信息。 #### 使用TortoiseGit修改最近一次提交的日志 为了更改最新的commit message,在资源管理器中右击项目文件夹,选择`TortoiseGit -> Show Log`选项打开日志窗口[^1]。在列表找到想要编辑的那个版本条目,通常就是最顶端的一项;接着点击它旁边的单选按钮选定目标提交,随后依次点击下方的`Edit Message...`按钮进入消息编辑框[^3]。此时可以在弹出对话框内自由编写新的描述文字,确认无误之后按下OK即完成了对本次提交说明文案的更新工作。 如果仅需快速修正最后一条记录的文字表述而无需涉及其他改动,则可以直接在Windows资源管理器内的任意位置空白处做同样形式的鼠标右键菜单调用,选取`TortoiseGit -> Amend Last Commit`命令项来实现上述功能[^4]。此方式相当于执行了命令行下的`git commit --amend`指令,但提供了更加直观的操作体验给那些不太熟悉shell环境的人士。 #### 处理更早之前的提交日志 当涉及到较旧的历史节点时,可以通过创建一个rebase会话来进行批量性的调整。启动这个进程的方式是在显示出来的日志视图面勾选出一系列连续的相关联修订版作为待处理对象集,再点按界面上方工具栏的`Rebase`图标触发对应的任务流[^2]。一旦遇到被设置成可编辑状态的目标事件点,程序便会自动停止下来等待进一步指示——这时便能依照前述介绍过的步骤去改写对应的备注内容啦! ```bash # 如果习惯于CLI的话也可以配合TortoiseGit这样做: git rebase -i HEAD~N # N代表要回溯多少个提交 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值