我有一个项目包含多个其他项目:
主要项目 小项目1 小项目2
所有包含node_modules文件夹。我想要git忽略文件夹,无论它是从根文件夹开始的位置。在.gitignore中添加如下内容:
*node_modules/*
我有一个项目包含多个其他项目:
主要项目 小项目1 小项目2
所有包含node_modules文件夹。我想要git忽略文件夹,无论它是从根文件夹开始的位置。在.gitignore中添加如下内容:
*node_modules/*
当前回答
只需在小项目1和小项目2中添加不同的.gitignore文件。每个.gitignore文件都应该/node_modules,这样就可以了。
其他回答
添加node_modules / 或node_modules 到.gitignore文件,忽略当前文件夹中所有名为node_modules的目录和如下图所示的子文件夹。
在Mac,
打开sourcetree 点击特定项目 点击设置 单击高级 点击编辑gitignore 写“node_modules” 并保存。
如果没有,它会自动创建一个.gitignore文件,然后创建一个文件名.gitignore 并添加复制和粘贴下面的代码
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*
下面这些都是不必要的文件
有关忽略文件的更多信息,请参阅https://help.github.com/articles/ignoring-files/。
保存。gitignore文件,然后就可以上传了
在项目目录的终端中使用通用的一行程序:
触摸。gitignore && echo "node_modules/" >> .gitignore && git rm -r——缓存的node_modules;git状态
不管你是否创建了.gitignore,不管你是否将node_modules添加到git跟踪中,它都能工作。
然后提交并推送.gitignore更改。
解释
如果它不存在,Touch将生成.gitignore文件。
Echo和>>将在.gitignore的末尾追加node_modules/,导致node_modules文件夹及其所有子文件夹被忽略。
Git rm -r——cached从Git控件中删除node_modules文件夹(如果之前添加过)。否则,这将显示一个警告pathspec 'node_modules'不匹配任何文件,这没有副作用,你可以安全地忽略。标志使删除是递归的,并包括缓存。
Git状态显示了新的更改。将出现.gitignore的更改,而node_modules将不会出现,因为git不再跟踪它。
如果你的子项目/客户端node_modules被提交,
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*
然后在最后一行添加“node_modules”。
# dependencies
/node_modules
/.pnp
.pnp.js
# testing
/coverage
# production
/build
# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local
npm-debug.log*
yarn-debug.log*
yarn-error.log*
node_modules
# ------ Up Here ------