网站首页 > 精选文章 正文
建议操作前将仓库目录复制到其它地方备份。
想要改变之前git提交注释信息,需要使用filter-branch命令,该命令会遍历指定的分支,找到最早符合条件的提交信息,并将最早一条一直到当前提交的所有提交进行重写(commit id和注释会发生变化,文件内容及其它提交信息不变)
如下命令会将当前分支(假设为dev)提交信息中包含first的替换为myfirst,包含second的替换为mysecond
git filter-branch -f --msg-filter '
msg=$(cat)
if echo "$msg" | grep -q "first" ; then
echo "$msg" | sed 's/first/myfirst/g'
elif echo "$msg" | grep -q "second" ; then
echo "$msg" | sed 's/second/mysecond/g'
else
echo "$msg"
fi
' HEAD
操作后需要强制覆盖远程分支
git push --force origin dev
其它成员拉取时由于提交记录与本地不一致会报错,所以其它成员需要强制覆盖本地提交记录
git fetch origin # 获取服务器提交信息
git checkout dev # 切到dev分支
git reset --hard origin/dev #强制覆盖本地dev分支
猜你喜欢
- 2025-05-08 如何使用 Python 操作 Git 代码?GitPython 入门介绍
- 2025-05-08 GIT提交记录和Revert commit过程分析
- 2025-05-08 实战百万文件monorepo仓库的优化(实战百万文件monorepo仓库的优化研究)
- 2025-05-08 如何在GitHub上大显身手?(github zen)
- 2025-05-08 k8s自动化运维四之数据备份(k8s备份deploy)
- 2025-05-08 轻松部署Gemma3-27B,L20服务器+最新版vLLM高效推理
- 2025-05-08 从 Element UI 源码的构建流程来看前端 UI 库设计
- 2025-05-08 在游戏中学习git操作(五)(github游戏)
- 2025-05-08 CMake中的"包管理"模块FetchContent
- 2025-05-08 【git】 如何删除所有 tag(本地和远程)
- 最近发表
- 标签列表
-
- 向日葵无法连接服务器 (32)
- git.exe (33)
- vscode更新 (34)
- dev c (33)
- git ignore命令 (32)
- gitlab提交代码步骤 (37)
- java update (36)
- vue debug (34)
- vue blur (32)
- vscode导入vue项目 (33)
- vue chart (32)
- vue cms (32)
- 大雅数据库 (34)
- 技术迭代 (37)
- 同一局域网 (33)
- github拒绝连接 (33)
- vscode php插件 (32)
- vue注释快捷键 (32)
- linux ssr (33)
- 微端服务器 (35)
- 导航猫 (32)
- 获取当前时间年月日 (33)
- stp软件 (33)
- http下载文件 (33)
- linux bt下载 (33)