这似乎很简单,但我很难理解以下命令之间的区别:
git add -n
and
git add -n --ignore-missing
我认为我理解"git add -n"的含义,它是"git add"的模拟操作,意味着它将告诉用户哪些文件更改将被添加到暂存区(索引),而不实际添加任何内容到暂存区。我在在线git文档中读到了以下关于"git add -n"命令的描述:
-n --dry-run 不要实际添加文件,只显示它们是否存在和/或将被忽略。
通过“将被忽略”,我假设如果“git add -n”未显示它将对现有文件执行的操作,则该文件正在被“忽略”。我还没有遇到过该命令会字面上显示将忽略某个文件的情况...然而,请注意,我只使用Git工作了几周。
现在,我的困惑始于"--ignore-missing"的以下描述:
--ignore-missing 此选项只能与--dry-run一起使用。通过使用此选项,用户可以检查是否会忽略任何给定的文件,无论它们是否已经存在于工作树中。
“...用户可以检查是否会忽略任何给定的文件”...但是,我认为这就是"git add -n"单独执行的功能。我设置了一个存储库,其中所有匹配*.log的文件都将被忽略。然而,除非它已经是存储库的一部分,否则我不会看到"git add -n"提到任何具有该扩展名的文件。"git add -n --ignore-missing"也是如此。
我一直在拼命寻找一个方法,使此选项与"git add -n"的常规用法有所区别。我有一种感觉,我的对于"git add -n"的理解部分或完全是错误的,这让我感到担忧。因此,我希望有人可以详细说明并强调我的错误之处。感谢所有能够提供帮助的人!
git add -n --ignore-missing some.filename
还是git add -n some.filename
,我都得到相同的结果。这可能与配置有关吗? - user6312047