介绍
Git是分布式版本控制系统,如今,它已成为许多开源和封闭源软件项目(包括Eclipse)的事实上的版本控制系统。 Git是令人惊叹的工具,具有很大的灵活性。
谈到灵活性,我对git的有趣功能感到惊讶,它允许您编辑和更改以前的提交消息。
基本上有两种方法可以做到,例如-
- 使用修正开关
- 使用变基
让我们来看看这些。
使用修正开关
这是更改最近提交的提交消息的简单方法。 在此,我们将git commit与amend开关一起使用。 用法如下所示,
git commit –amend -m “new message”
注意:我正在使用一些git别名,例如git ol以正确的格式显示git commit日志,您可以在我的github存储库的 .gitconfig中浏览一些别名
在我的仓库中考虑以下提交。
提交相同,但添加了修订开关,以下显示了实际用法:
这是编辑最新提交消息的快速,不错的方法。
使用变基
每当您要更改多个或多个提交消息或最近提交以外的其他消息时,这都是一种不错的方法。 尽管rebase功能非常强大,但可以做很多事情。 但是对于本文,我们只关注编辑提交消息。
我们出于目的使用以下命令,
git rebase -i <sha1 of previous commit msg> or <relative-HEAD-pointer>
考虑git repo,其中的提交很少,如下所示
上面的提交日志在提交时以日期-时间顺序降序显示,因此最新的提交是最高的,最近的提交在其下方,依此类推。
假设您要更改第二个提交消息(从底部开始),然后执行以下操作-
当您要更改第二个(156ce8e)提交日志时,我们在此之前指定SHA1之一,在本例中为第1个(6343229)提交日志,以进行rebase命令。
以下是执行此操作的命令–注意,SHA1哈希
按下Enter键后,您会看到以下用于重新编辑的rebase文件-
在上面,重点放在对我们很重要的文件之上。 它在开始时显示带有一些命令/标记的提交。
这些是出于多种目的而重新设置命令/标记的目的,但是对于我们来说,我们使用“ reword”来解决我们的目的。
继续并将第一行的标记(这是我们的第二次提交)更改,将“ pick”更改为“ r”或“ reword”,并保留其他内容,如下所示
通过按Ctrl + X退出文件编辑后(其他方式取决于editor),之后您将立即看到新提交消息的提交对话框。 输入新的提交消息,然后退出。
然后我们完成了。 之后,您应该看到以下内容
检查提交日志中是否有新的提交消息
上面的步骤仅用于更改一个提交消息,而对于编辑,更改多个,则可以根据要求将其他提交的标记更改为“ reword”,因此,git将要求为每个标记的提交消息输入新的提交消息框,并且你完成了
多数民众赞成在这篇文章。
翻译自: https://www.javacodegeeks.com/2014/02/changing-commit-message-in-git.html