git diff忽略目录下的所有内容(node_modules)

时间:2016-09-11 17:41:53

标签: git directory ignore git-diff

我有一个repo,其中node_modules中的文件也被提交到repo。我需要在repo上执行git diff但是想忽略node_modules下的所有内容。我怎么能这样做?

我尝试了这个git diff old_api..master -- . ':!node_modules'(正如在这个答案中所建议的那样:https://stackoverflow.com/a/29374503)但它仍然将内容区分到node_modules目录中,例如:

diff --git a/db/node_modules/bhttp/README.md b/db/node_modules/bhttp/README.md

我也不确定..做了什么,所以我删除了它并尝试了这个:git diff old_api master -- . ':!node_modules'但没有区别。

任何帮助?

2 个答案:

答案 0 :(得分:0)

我是git的新手,但过去我已经清除了git上的缓存,然后添加了一个包含节点模块路径的.gitignore。

以下是一个示例缓存命令:

git rm -r --cached .
git add .
git commit -am 'git cache cleared'
git push

以下是一些可以帮助您入门的文档:git ignore docs

git hubs周围还有很多模板可以帮助你开始使用样板文件.gitignore here is a link to many excellent gitignore files

答案 1 :(得分:0)

您是否尝试过git diff -- . ':!{path to your node_modules}/node_modules'

例如:git diff -- . ':!myfolder/anotherfolder/node_modules'