Git修改commit提交信息

当进行一次commit提交的时候,可以附带简短的信息说明,代码如下:

$ commit -m "蚂蚁部落提交"  

在-m命令后面跟着的”蚂蚁部落提交”就是commit提交信息。
提交信息可以修改,代码实例如下:

$ git commit --amend -m "c3"  

但是上述命令只能修改最后一次commit提交的信息。
更多内容可以参阅 (http://www.softwhy.com/article-8492-1.html) 用法详解一章节。
如果想要修改其他commit提交信息可以使用如下命令:

$ git rebase -i  

首先看一下提交历史,代码如下:

$ git log --oneline  

代码运行效果截图如下:

下面开始使用git rebase -i命令,代码如下:

$ git rebase -i b0aa963  

特别说明:
(1).b0aa963用来确定commit范围,表示从此提交开始到当前的提交。
(2).并不包括b0aa963提交。
运行此命令后,弹出VIM编辑器,关于编辑器的基本操作参阅git Vim编辑器输入内容、保存和退出操作一章节。

截图如下:

截图说明:
(1).顶部的commit提交排列顺序与git log排列相反,最先提交的在最上面。
(2).前面的pick表示保留此次commit提交不做修改。
(3).底部红框给出所有可用的命令。
假如要修改4f66476提交的commit信息,代码如下:

将pick改为reword(负责修改commit信息),然后保存并退出,之后再一次弹出VIM编辑器:

在对应的地方修改,然后退出保存即可,然后给出如下反馈信息:

现在看一下提交历史,代码如下:

$ git log --oneline  

代码运行效果截图如下:

一.修改提交信息的影响:

(1).当前提交的sha-1值改变:
虽然仅仅修改了commit的提交信息,但是由于sha-1的计算方式决定,它的sha-1也将会被修改。
(2).其后的提交的sha-1值改变:
它后面的commit的sha-1值也会改变,因为后面的commit对象有一个指针是指向前面commit,既然前面commit的sha-1值改变了,那么这个指针也会发生变化,根据sha-1的计算原则,后面的commit的sha-1值都会改变。

二.取消修改:

如果你还记得在修改之前,最后一次commit提交的sha-1值,应用如下代码即可:

$ git reset 04a540f --hard  

如果忘记sha-1值,那么可以采用如下代码:

$ git reset ORIG_HEAD --hard  

关于ORIG_HEAD可以参阅Git ORIG_HEAD用法 (http://www.softwhy.com/article-8502-1.html) 介绍一章节。

原文出处:softwhy -> http://www.softwhy.com/article-8700-1.html

本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如果侵犯你的利益,请发送邮箱到 [email protected],我们会很快的为您处理。