Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git 如何将目录中已修改的文件添加到索引中,但仍然忽略未跟踪的文件?_Git - Fatal编程技术网

Git 如何将目录中已修改的文件添加到索引中,但仍然忽略未跟踪的文件?

Git 如何将目录中已修改的文件添加到索引中,但仍然忽略未跟踪的文件?,git,Git,通常我使用git commit-a或git add-a快速添加repo中所有已更改的文件 有时,我希望提交已更改内容的子集。在这里,我们明确地指定它们 但我现在想做一些更细致的事情:假设我的git repo中有两个子项目,我想提交子项目a,其中我在a/dir中(1)一堆没有签入git的临时文件,我不想添加到索引中,以及(2)多个已签入且已更改的文件,我希望通过命令一下子将其添加到索引中 我知道,如果我修改gitignore以完全封装所有可能类型的临时文件,那么我可以使用add-a轻松实现这一点。

通常我使用
git commit-a
git add-a
快速添加repo中所有已更改的文件

有时,我希望提交已更改内容的子集。在这里,我们明确地指定它们

但我现在想做一些更细致的事情:假设我的git repo中有两个子项目,我想提交子项目a,其中我在
a/
dir中(1)一堆没有签入git的临时文件,我不想添加到索引中,以及(2)多个已签入且已更改的文件,我希望通过命令一下子将其添加到索引中

我知道,如果我修改gitignore以完全封装所有可能类型的临时文件,那么我可以使用
add-a
轻松实现这一点。然而,这并不是很实际,因为目录往往会在其中积累“额外的项目”


这样的git命令存在吗

以以下方式更新所有跟踪的文件:

git add -u A
发件人:

-u,, --更新

在索引中已存在匹配项的位置更新索引。这将删除和修改索引项以匹配工作树,但不添加新文件

如果在使用
-u
选项时未给出
,则整个工作树中的所有跟踪文件都将更新(旧版本的Git用于将更新限制到当前目录及其子目录)


在以下位置更新所有跟踪的文件:

git add -u A
发件人:

-u,, --更新

在索引中已存在匹配项的位置更新索引。这将删除和修改索引项以匹配工作树,但不添加新文件

如果在使用
-u
选项时未给出
,则整个工作树中的所有跟踪文件都将更新(旧版本的Git用于将更新限制到当前目录及其子目录)


当然,可以编写一个小脚本来解析git输出并单独添加文件。我希望有一些内置的东西可以做到这一点,当然可以编写一个小脚本来解析git输出并单独添加文件。我希望有什么东西可以做到这一点。