[英]how to add all currently untracked files/folders to git ignore?
我初始化了git
存储库并进行了第一次提交。 现在,在这个目录中我运行./configure
和./make all
以便它填充很多不想跟踪的额外文件/文件夹。
我想做的是将所有这些未跟踪的文件一劳永逸地添加到我的 gitignore 中。 有什么简单的方法可以做到吗?
我可以通过在 .gitignore 中指定适当的行来摆脱一些不必要的文件,如*.o
或*.mod
,但这并不能解决问题。
试试这个:
git status -s | grep -e "^\?\?" | cut -c 4- >> .gitignore
说明: git status -s
为您提供git status -s
的简短版本,没有标题。 grep
只需要以??
开头的行。 ,即未跟踪的文件, cut
删除了??
,其余的将其添加到.gitignore
文件中。
一个更简单的命令是
git ls-files --others --exclude-standard >> .gitignore
您可能想要编辑结果以使用通配符替换重复的模式。
如果您的工作树除了未跟踪的文件/文件夹之外是干净的,则可以使用awk
更短的解决方案:
git status -s | awk '{print $2}' >> .gitignore
在接受的答案中,grep 部分导致了我的问题(即没有过滤,而是显示了包括以M
开头的行(已修改)在内的所有行),并替换了"^\\?\\?"
用"^??"
为我解决了。 我在 win 10 上并在 msys2 的 bash 中使用它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.