我有一个大型Git存储库,其中包含许多随机文件和目录,应该被忽略。当我跑git status
时,我会收到很多噪音。
这些文件和目录不遵循特定模式。我可以手动将它们逐个添加到.gitignore
,但这很乏味。
是否有快速方法可以将git status
返回的许多或所有“未跟踪文件”添加到.gitignore
?这似乎是一项显而易见的任务,我认为解决方案必须存在。
答案 0 :(得分:1)
你可以创建一个简单的Git别名,然后像这样调用它:
已编辑:响应ddd kkk的评论
git config alias.ignore-untracked "! git status -s | grep '??' | perl -pe 's/.{3}/\//' >> .gitignore"
git ignore-untracked
答案 1 :(得分:0)
根据Joseph Strauss的解决方案,我使用的最终别名定义是:
git config alias.ignore-untracked "! git status -s | grep '??' | cut -d\ -f2- | awk '{print \"/\" \$0; }' | sed '1i # ignore-untracked: $(date)' >> .gitignore"
这预先添加了gitignore,并附有一条注释,指出文件的添加日期。
此代码执行如下:
git ignore-untracked