只使用git将当前目录中修改过的文件添加进版本控制?

3
简单问题。我该如何将当前目录中修改和跟踪的文件添加到仓库中?
假设我有3个修改过的文件。
Utils/readme.txt
code/main.pas
code/feature.pas

当前目录位于code/。因此,我只想提交main.pas和feature.pas文件。

你同时使用了commitadd这两个词,它们在git中有非常不同的含义和功能。回答你的问题将取决于仓库的确切状态 - 更准确地说,是仓库中感兴趣的文件的确切状态。提交(commit)修改后的文件到仓库与添加(add)是不同的。迄今为止给出的答案只涉及如何将修改后的文件add到仓库的暂存区。之后它们仍需要被提交(commit)。 - skeetastax
2个回答

5
你可以这样做:
git add -u /path/to/folder 不过,这会将该文件夹下的子目录中的文件也一并添加,可能不是你想要的。如果你不想添加子目录中的文件,且使用的是bash shell,可以尝试以下命令:
git add /path/to/folder/*.*
该命令将添加该文件夹下所有遵循标准名称.扩展名命名约定的文件。

OP问如何仅提交修改过的文件。只有在暂存区没有任何文件的情况下,此答案才有效。 - skeetastax

3

仅提交已经被跟踪的文件:

git add -u

这也将获取已删除的任何文件,但不会添加新创建的文件。


我明白了。但是这是否考虑了当前目录?请看我的修改后的问题。 - Roland Bengtsson
我看到了你修改后的问题,任何git add命令都可以跟随文件路径,而不受参数的影响。 - Matt Clark

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接