Git提交日志修改方法实例汇总

 更新时间:2020年09月11日 10:20:24   作者:陌鉎こ城sHi  
这篇文章主要介绍了Git提交日志修改方法实例汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

情况一:最后一次提交且未push

执行以下命令:

git commit --amend

git会打开$EDITOR编辑器,它会加载这次提交的日志,这样我们就可以在上面编辑,编辑后保存即完成此次的修改。

情况二:最后一次提交且已push到服务器

执行以下命令:

git commit --amend
git push origin master --force

和情况一的做法一样。使用push推送到远程服务器是需要加上--force,让服务器更新历史记录。

需要注意的是:把修改后的日志强制push到Git服务器,如果别人本地的副本有修改,很有可能会导致他们同步不了,所以最好和他们核对下。

情况三:旧的提交且未推送

假设commit是倒数第3次提交,这个可以使用git log查看,

$ git log
commit b1b451d218cc23b6c769f373164f2b89cf54d0aa
Author: clcaza <clcaza@sina.cn>
Date: Sat Mar 10 19:09:08 2018 +0800

添加内容d

commit 04f0d1809d5d31cc6e930efcba47a5f3f7e93319
Author: clcaza <clcaza@sina.cn>
Date: Sat Mar 10 19:08:24 2018 +0800

添加内容c

commit 94fc8feb916442d56b558d5c370f18f057298921
Author: clcaza <clcaza@sina.cn>
Date: Sat Mar 10 19:07:08 2018 +0800

添加内容a

commit fd517efa9faf6a5ec71d0eac38fbcfa0cd689f40
Author: clcaza <clcaza@sina.cn>
Date: Sat Mar 10 19:06:21 2018 +0800

init

执行rebase

git rebase -i HEAD~3

它会打开一个编辑器,它会把最后前3次的提交显示出来,类似于:

pick 94fc8fe 添加内容a
pick 04f0d18 添加内容c
pick b1b451d 添加内容d

你会看到,它是按提交的顺序显示的,与git log显示的顺序相反。定位到你要编辑日志的那一行,把pick修改为edit,然后保存。

接着就是修改日志内容了

git commit --amend

完成编辑日志后,记得执行:

git rebase --continue

Rebase目的是打开提交的历史记录,让您选择要修改的内容。 Git会让你在一个新的分支修改内容。 git rebase --continue则是让你重新回到之前的分支。

情况四:旧的提交且已push到服务器

前面编辑日志的操作是和情况三是一样的:

git rebase -i HEAD~X
git commit --amend
git rebase --continue

X表示倒数第几次提交。

完成编辑日志后,执行push:

git push origin master --force

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 在Centos上搭建Maven中央仓库的方法

    在Centos上搭建Maven中央仓库的方法

    这篇文章主要介绍了在Centos上搭建Maven中央仓库的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • ubuntu18.04获取root权限并用root用户登录的实现

    ubuntu18.04获取root权限并用root用户登录的实现

    这篇文章主要介绍了ubuntu18.04获取root权限并用root用户登录的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • Linux内存泄漏检测shell脚本

    Linux内存泄漏检测shell脚本

    这篇文章主要为大家详细介绍了Linux内存泄漏检测shell脚本,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • centos7 用rpm安装mysql详解

    centos7 用rpm安装mysql详解

    这篇文章主要介绍了centos7 用rpm安装mysql详解的相关资料,需要的朋友可以参考下
    2016-10-10
  • linux为repo 'AppStream'下载元数据失败的解决

    linux为repo 'AppStream'下载元数据失败的解决

    这篇文章主要介绍了linux为repo 'AppStream'下载元数据失败的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • Apache 安全配置方法

    Apache 安全配置方法

    在本文中,笔者将为你提供10个技巧,借此你可以保护自己的Apache Web服务器免于受到许多攻击。不过,必须谨记,你需要仔细地评估每一个技巧,以确保其适合于你的组织。
    2010-12-12
  • LAMP&LNMP自动化安装脚本代码

    LAMP&LNMP自动化安装脚本代码

    这篇文章主要介绍了LAMP&LNMP自动化安装脚本实现代码,需要的朋友可以参考下
    2013-09-09
  • 【Linux】linux常用基本命令总结(推荐)

    【Linux】linux常用基本命令总结(推荐)

    Linux中许多常用命令是必须掌握的,这里将我学linux入门时学的一些常用的基本命令分享给大家一下,有兴趣的可以了解一下。
    2016-11-11
  • 80端口被占用 Apache启动失败的解决方法

    80端口被占用 Apache启动失败的解决方法

    80端口被占用,Apache启动失败,遇到这个问题真的很头疼,这篇文章主要就为大家介绍了80端口被占用,Apache启动失败的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • 解决Linux可执行文件目录下明明存在*.so文件,但却提示找不到

    解决Linux可执行文件目录下明明存在*.so文件,但却提示找不到

    这篇文章主要介绍了解决Linux可执行文件目录下明明存在*.so文件,但却提示找不到问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11

最新评论