Git Commit命令

Git Commit命令

用于记录存储库中的更改。在git add之后是下一个命令。每次提交包含索引数据和提交消息。每次提交形成父子关系。当我们在Git中添加文件时,它将在暂存区中生效。提交命令用于将更新从暂存区获取到存储库中。

暂存和提交是相互关联的。暂存允许我们继续对存储库进行更改,而当我们想要将这些更改共享到版本控制系统时,提交允许我们记录这些更改。

提交是项目的快照。每个提交都记录在存储库的主分支中。我们可以回顾提交或将其恢复到旧版本。两个不同的提交永远不会互相覆盖,因为每个提交都有自己的提交ID。这个提交ID是由 SHA(安全散列算法) 算法创建的加密数字。

让我们来看看不同类型的提交。

git commit命令

commit命令将提交更改并生成一个提交ID。没有任何参数的commit命令将打开默认的文本编辑器并要求输入提交消息。我们可以在这个文本编辑器中指定我们的提交消息。它将运行如下:

$ git commit

上述命令将提示一个默认编辑器并要求输入提交信息。我们对 newfile1.txt 进行了更改,并希望将其提交。可以按以下步骤完成:

考虑下面的输出:

Git Commit命令

当我们运行该命令时,它将提示一个默认的文本编辑器,并要求输入提交消息。文本编辑器的样式如下所示:

Git Commit命令

按下 Esc 键然后输入 I 键进入插入模式。输入您想要的提交消息。按下 Esc 键然后输入 :wq 键保存并退出编辑器。因此,我们已成功进行了提交。

我们可以通过git log命令来检查提交。考虑下面的输出:

Git Commit命令

我们可以从上面的输出中看到,日志选项显示了提交ID、作者详细信息、日期和时间,以及提交消息。

要了解有关日志选项的更多信息,请访问Git Log。

Git commit -a

commit命令还提供了 -a 选项来指定一些提交。它用于提交所有更改的快照。此选项仅考虑已添加到Git中的文件。它不会提交新创建的文件。考虑以下场景:

我们对已经暂存的文件newfile3进行了一些更新,并创建了一个文件newfile4.txt。检查仓库的状态并运行以下提交命令:

$ git commit -a

考虑输出:
Git Commit命令

上述命令将弹出我们默认的文本编辑器,并要求输入提交说明。输入提交说明后,保存并退出编辑器。此过程只会提交已添加的文件,不会提交未暂存的文件。参考以下输出:

Git Commit命令

正如我们在上面的输出中看到的那样,新文件newfile4.txt尚未提交。

Git commit -m

commit命令的-m选项允许您在命令行上编写提交消息。该命令不会提示文本编辑器。它将以如下方式运行:

$ git commit -m "Commit message."

上述命令将使用给定的提交消息进行提交。考虑以下输出:

Git Commit命令

我们也可以使用 -am 选项来处理已经暂存的文件。这个命令将立即为已经暂存的文件进行提交,并附带一个提交消息。命令运行如下:

$ git commit -am "Commit message."

Git Commit Amend(更改提交消息)

修改选项让我们可以编辑最后一次提交。如果不小心提交了错误的提交消息,那么这个功能对我们来说是一个野蛮的选择。它的运行方式如下:

$ git commit -amend

上述命令将会提示默认的文本编辑器,让我们能够编辑提交信息。

我们可能需要一些与提交相关的其他基本操作,如还原提交、撤销提交等,但这些操作并不属于提交命令的一部分。我们可以使用其他命令来完成。以下是一些基本操作:

  • Git撤销提交:请访问Git Reset
  • Git还原提交:请访问Git Revert
  • Git删除提交:请访问Git Rm

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程