git - 忽略 git status 中未跟踪的旧文件
问题描述
这完全是我自己的懒惰造成的问题。在某些项目中,我倾向于积累一堆我还不想删除但也不想提交的临时文件。而且因为它们只是我的本地临时文件,所以我也不想要.gitignore
它们。
git status
如果它们在过去 X 天被修改,有没有办法只显示未跟踪的文件?
解决方案
这是我现在使用的脚本,而不是git status
:
#!/bin/bash
OLD_THRESHOLD="+30" # More than 30 days old
OLD_UNTRACKED=$(git status --porcelain=2 | \
grep '^[?] ' | cut -d' ' -f 2- | \
xargs -I X find X -maxdepth 0 -mtime $OLD_THRESHOLD )
git -c color.status=always status | grep -vF "$OLD_UNTRACKED"
它需要一个未跟踪文件的列表,并过滤掉任何mtime
超过 30 天的文件。
请注意,未跟踪的文件仍会在例如git add folder
. 最好组织目录,以便临时文件位于 gitignored 文件夹中。
推荐阅读
- python - Python REST API 数字类型路由参数问题
- python-3.x - 无法在 Ubuntu 18.04.2 LTS 上安装 python3-tk
- java - 客户端/服务器 jars - 线程“主”java.lang.reflect.InvocationTargetException 中的异常
- karate - 将 JSON 传递给场景大纲
- javascript - 将变量映射到 React 中的状态
- python - 如何过滤数据框列中的数字字符串列表?
- java - Android 上的 SAML
- javascript - 无法理解这个涉及简单 for 循环的基本算法?
- c++ - 无法从 boost multi_index_container++ 中删除元素
- node.js - 文件不是由 Heroku 上的 fs.writeFile()