小编典典

git 仅添加修改过的更改并忽略未跟踪的文件

all

我运行了“gitstatus”,下面列出了一些已修改/或标题为“未暂存为提交的更改”的文件。它还列出了一些我想忽略的未跟踪文件(我在这些目录中有一个“.gitignore”文件)。

我想将修改后的文件放在暂存中,以便我可以提交它们。当我运行“git add .”时,它会将修改后的文件和我想忽略的文件添加到暂存中。

如果出现下面的 git 状态,如何仅添加修改后的文件并忽略未跟踪的文件。

另外,我的“.gitignore”文件是否正常工作?

$ git status
# On branch addLocation
# Changes not staged for commit:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
#       modified:   someProject/path/domain/viewer/LocationDO.java
#       modified:   someProject/path/service/ld/LdService.java
#       modified:   someProject/path/service/ld/LdServiceImpl.java
#       modified:   someProject/path/web/jsf/viewer/LocationFormAction.java
#       modified:   someProject/war/WEB-INF/classes/message/viewer/viewer.properties
#       modified:   someProject/war/page/viewer/searchForm.xhtml
#
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       .metadata/
#       someProject/build/
no changes added to commit (use "git add" and/or "git commit -a")

阅读 210

收藏
2022-03-02

共1个答案

小编典典

理想情况下,您.gitignore应该防止未跟踪(和忽略)的文件显示在状态中,添加使用git add等。所以我会要求您更正您的.gitignore

您可以这样git add -u做,它将暂存已修改和已删除的文件。

您也可以git commit -a只提交修改和删除的文件。

请注意,如果您有 2.0 之前版本的 Git 并已使用git add .,则需要使用git add -u .

2022-03-02