Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/23.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_Repository - Fatal编程技术网

暂存具有特定扩展名的文件,并且仅显示为git状态中已修改的文件

暂存具有特定扩展名的文件,并且仅显示为git状态中已修改的文件,git,repository,Git,Repository,在命令提示符下的git中,我只想简单地添加*.cpp和*.h文件,但只添加那些在运行命令git status时显示为已修改的文件 例如,如果在我运行命令git status后,我得到: 未为提交而暂存的更改: 修改:file1.cpp 修改:file2.cpp 修改:file1.h 修改:file2.h 未跟踪的文件: file3.cpp 文件3.h 别说废话 dontAddMeEither.foo 然后我想把所有的东西都放在舞台上,(所有的CPP和h文件),除了最后两个。我该怎么做?谢

在命令提示符下的git中,我只想简单地添加
*.cpp
*.h
文件,但只添加那些在运行命令
git status
时显示为已修改的文件

例如,如果在我运行命令
git status
后,我得到:

未为提交而暂存的更改:

  • 修改:file1.cpp
  • 修改:file2.cpp
  • 修改:file1.h
  • 修改:file2.h
未跟踪的文件:

  • file3.cpp
  • 文件3.h
  • 别说废话
  • dontAddMeEither.foo
然后我想把所有的东西都放在舞台上,(所有的CPP和h文件),除了最后两个。我该怎么做?谢谢

将的
-u
选项与您想要的任何其他选项结合使用:

-u

--更新

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


在本例中,类似于
git add-u'*.cpp'*.h'
的东西应该可以满足您的需要。

效果很好。谢谢顺便说一句,如果我想简单地添加显示的所有内容(未跟踪和跟踪的文件),那会是什么命令?@TheGrapebyon,所有跟踪和未跟踪的
.cpp
.h
文件,或者所有跟踪和未跟踪的文件,不管文件名是什么?@TheGrapebyon,将所有
.cpp
.h
文件放在舞台上,使用我的答案中显示的命令,但不带
-u
标志。在另一种情况下,我认为
gitadd-A
会满足您的需求。这些都是简单的后续问题,所以我很乐意在评论中帮助您,但一般来说,如果您单独提交每个新问题,堆栈溢出效果最好。