抑制Git忽略警告

3

我在.gitignore文件中定义了各种散乱的路径和文件。我的典型工作流程之一是导航到路径,然后执行git add *以将该路径下的所有更改加入暂存区。但是,这样做有时会出现警告,如"以下路径被你的一个 .gitignore 文件忽略:"

这些路径本应被忽略。有没有办法要么A)在运行git add *时抑制此警告,要么B)使用不触发此警告但具有相同行为并且同样简洁的其他 git 命令?


2
以前从未见过这个。但我总是使用 git add .(点而不是星号)。 - akop
2
你使用 git add . 命令时,是否仍然会收到警告? - melpomene
1
@melpomene 当使用 . 时,警告不会被打印出来,我已经在我的答案中包含了这一点。谢谢你和 @user6537157 提醒我这个显而易见的解决方案。 - Matthew
1个回答

7

如果符合您的需求,那么解决问题最简单、最优雅的方式(来自评论区)是使用.代替*索引所有文件。请在此处阅读以了解在当前上下文中使用这两个符号之间的微妙差别,但请保留HTML标记。

git add . 

您可以将命令的输出重定向到本地日志文件中,以便在控制台完全静默的情况下,将输出记录在指定的日志文件中,这样就不会错过重要的内容:

git add * &> output.log

您还可以通过添加&> /dev/null完全不使用控制台输入来完全静默地运行命令,但是我不建议这样做,因为它会阻止命令向您提供任何控制台输出,所以在使用此功能时必须小心,因为您将无法看到是否发生任何错误或严重警告。

git add * &> /dev/null

另一个尝试的方法是 git add '*'(即转义 *)。我不确定它会做什么。 - melpomene
@melpomene 它也避免了警告,但我不确定它是否实际执行了“add”操作。明天我会检查一下。 - Matthew
请将 . 解决方案放在顶部,我会接受您的答案。不应鼓励将输出路由到 /dev/null - MooseBoys
@MooseBoys 我同意你的观点,并将首选解决方案移至答案顶部。 - Matthew

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