我在Windows下本地工作。我有一个本地git仓库,已经包含了一些文件。我工作的文件夹(和子文件夹)包括许多尚未跟踪且不知道git的其他文件。其中一些文件已经好几个月没有更改了。我需要添加一些,但不是所有这些文件。包含的标准应该是最后更改的日期(例如,我想要"git add";
有办法做到这一点吗?在这里搜索帮助文件和线程,只有在文件已经被跟踪时才会显示解决方案。
仅使用git是不可能的,但如果您有"git "或可用的wsdl,您应该能够运行像
这样的内容find . -type f -mtime -31 -not -path '*/.git/*' -exec git add -v -- {} +
添加最近31天内修改的文件。
指出:
- 如果您只想包含某些文件夹,请指定它们的名称而不是
.
- 要列出指定年龄匹配的文件,
执行不带-exec
部分的命令:find . -type f -mtime -31 -not -path '*/.git/*'
要列出哪些文件将被添加而不实际添加它们,
使用
git add
的--dry-run
选项(简称:-n
):find . -type f -mtime -31 -not -path '*/.git/*' -exec git add -v -n -- {} +
编辑历史:
- 用
git add
的-v
选项(又名--verbose
)代替find
的-print
表达式。这样,只列出实际添加的文件,而不是传递给git add
命令的所有文件。 - 在备注中添加预演建议