Git Add命令

Git Add命令

git add命令用于将文件内容添加到索引(暂存区)中。此命令将当前的工作树内容更新到暂存区,并准备好下一次提交的暂存内容。每次添加或更新项目中的任何文件时,都需要将更新转发到暂存区。

git add命令是Git技术的核心部分。通常情况下,它一次只添加一个文件,但也有一些选项可以一次添加多个文件。

“索引”包含工作树数据的快照。此快照将被转发到下一次提交。

在进行提交之前,可以多次运行git add命令。所有这些添加操作都可以放在一个提交的范围之下。add命令会添加通过命令行指定的文件。

git add命令默认不会添加.gitignore文件。实际上,我们可以通过这个命令忽略文件。

让我们了解如何在Git中添加文件:

Git add files

git add命令非常简单。它将文件添加到暂存区中。我们可以一次性添加一个或多个文件到暂存区中。命令如下:

$ git add <File name>

以上命令已添加到git的暂存区,但尚不能在版本控制系统中共享。需要进行提交操作才能共享它。让我们来理解下面的场景。

我们已经在 NewDirectory 中为我们新创建的仓库创建了一个文件。要创建文件,请使用以下命令:

$ touch newfile.txt

并通过”git status”命令检查状态是否为未跟踪:

$ git status

上面的命令将显示存储库中未跟踪的文件。这些文件可以添加到我们的存储库中。因为我们知道我们创建了一个新文件 newfile.txt,所以要将此文件添加到存储库中,请运行以下命令:

$ git add newfile.txt

请考虑以下输出:

Git Add命令

从上面的输出中,我们可以看到 newfile.txt 已经被添加到我们的仓库中。现在,我们必须提交它以在Git上分享。

Git添加全部

我们可以在Git中添加多个文件,但是我们必须重复运行添加命令。Git为我们提供了一个独特的添加命令选项,可以一次性添加所有可用的文件。要从仓库中添加所有文件,请使用 -A 选项运行添加命令。我们可以使用’.’来代替 -A 选项。该命令将同时将所有文件添加到暂存区中。它将运行如下:

$ git add -A

或者

$ git add .

上述命令将添加存储库中的所有可用文件。考虑以下情况:

我们可以创建四个新文件,或者我们可以复制它,然后一次性添加所有这些文件。考虑以下输出:

Git Add命令

在上面的输出中,所有的文件都显示为Git的未跟踪文件。要一次跟踪所有这些文件,请运行以下命令:

$ git add -A

以上命令将所有文件添加到暂存区。请记住, -A 选项区分大小写。请参考以下输出:

Git Add命令

在上述输出中,所有文件都已添加。所有文件的状态显示为已暂存。

从暂存区中删除文件

git add命令也可用于从暂存区中删除文件。如果我们从仓库中删除了一个文件,则该文件在我们的仓库中将成为一个未跟踪的文件。使用add命令可以将其从暂存区中删除。听起来很奇怪,但Git可以做到。考虑以下情景:

我们已从仓库中删除了 newfile3.txt 文件。删除文件后仓库的状态如下:

Git Add命令

$ git add newfile3.txt

请考虑以下输出:

Git Add命令

从上面的输出中,我们可以看到文件已从暂存区中移除。

只添加所有新创建和更新的文件:

Git允许我们一次性将更新和新创建的文件添加到暂存区。我们将使用忽略删除选项来实现此操作。它的用法如下:

$ git add --ignore-removal .

添加所有已修改和已删除的文件

Git add提供了各种选项。Git还提供了另一个选项,允许我们仅将已修改和已删除的文件添加到暂存区,而不会添加新创建的文件。要仅将所有已修改和已删除的文件添加到暂存区,请运行以下命令:

$ git add -u

按通配符添加文件

Git允许我们一次性添加相同模式的所有文件。这是一种将多个文件一起添加的另一种方法。假设我想要添加所有的java文件或文本文件,我们可以使用模式.java或.txt。为了这样做,我们将运行以下命令:

$ git add *.java

上述命令将为所有Java文件暂存。同样的模式也适用于文本文件。

添加文件后的下一步是提交以在Git上共享。

撤销Git添加

我们可以撤销git add操作。然而,这不是git add命令的一部分,但我们可以通过git reset命令来实现。

要撤销添加操作,请运行以下命令:

$ git reset <filename>

了解有关git reset命令的更多信息,请访问Git Reset。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程