我可以检查哪些提交的文件现在可以.gitignore了吗?例如,我在旧提交中提交了a.tmp
,但现在我在*.tmp
上创建了.gitignore
这样的规则,我想要删除这些旧文件。我想知道这是哪些文件以及如何解决它。
答案 0 :(得分:0)
您可以使用git check-ignore --no-index
执行此操作。这是一个小型演示。
$ git init foo
cd fInitialized empty Git repository in /Users/schwern/tmp/foo/.git/
$ cd foo
$ touch a.tmp
$ git add a.tmp
$ git ci -a
[master (root-commit) 30f7de9] Add a.tmp
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 a.tmp
$ echo '*.tmp' > .gitignore
$ cat .gitignore
*.tmp
$ git check-ignore --no-index *
a.tmp
如果你想做整个存储库,find . -type f | xargs git check-ignore
(我忘了如何让find跳过.git目录。)