我有一个包含多个其他项目的项目:
全部包含node_modules
文件夹。我希望git忽略该文件夹,无论它从根文件夹开始。像这样添加.gitignore:
*node_modules/*
答案 0 :(得分:542)
添加此
node_modules/
到.gitignore
文件,忽略当前文件夹和所有子文件夹中名为node_modules
的所有目录
答案 1 :(得分:112)
我遇到过这种情况几次,所以我做了一个单行我可以粘贴到项目目录中的终端:
touch .gitignore && echo "node_modules/" >> .gitignore
或者,当我已经将node_modules
文件夹添加到git中时:
git rm -r --cached node_modules && touch .gitignore && echo "node_modules/" >> .gitignore
然后,验证它是否有效:
git status
<强>解释强>
touch
会生成.gitignore
文件(如果该文件尚不存在)。
echo
和>>
会在node_modules/
末尾附加.gitignore
,导致node_modules
文件夹和所有子文件夹被忽略。
git rm -r --cached
从git控件中删除node_modules
路径。标志导致删除是递归的并包括缓存。
答案 2 :(得分:15)
首要的事情是在my-app中添加.gitignore
文件。就像下面的图片一样。
然后将其添加到您的.gitignore
文件中
/node_modules
您也可以添加其他文件,以忽略它们被推送到github上。这是.gitignore中保留的更多文件。您可以根据需要添加它们。 #
只是一种在.gitignore文件中添加注释的方法。
# See https://help.github.com/ignore-files/ for more about ignoring files.
# dependencies
/node_modules
# 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*
答案 3 :(得分:8)
答案 4 :(得分:7)
尝试做这样的事情
**/node_modules
**
用于整个项目中的递归调用
两个与完整路径名匹配的连续星号(“ **”)可能具有特殊含义:
前导“ ”后跟斜杠表示在所有目录中均匹配。例如,“ / foo”与文件“ foo”在任何位置都匹配文件或目录“ foo”。 “ ** / foo / bar”与文件或目录“ bar”匹配,直接位于目录“ foo”下。
结尾的“ / ”匹配其中的所有内容。例如,相对于.gitignore文件的位置,“ abc / ”以绝对深度匹配目录“ abc”内的所有文件。
一个斜杠后跟两个连续的星号,然后一个斜杠匹配零个或多个目录。例如,“ a / ** / b”匹配“ a / b”,“ a / x / b”,“ a / x / y / b”等。
其他连续的星号被视为无效。
答案 5 :(得分:6)
直接通过代码编辑器或命令
touch .gitignore
在根文件夹中创建 .gitignore 文件
打开 .gitignore 声明文件夹或文件名,例如 / foldername
答案 6 :(得分:2)
**node_modules
这对我有用
以递归方式忽略子文件夹中存在的所有node_modules
答案 7 :(得分:0)
将以下行添加到您的.gitignore
*/node_modules/*
这将忽略当前目录以及子目录中的所有node_modules。
答案 8 :(得分:0)
您也可以使用SVN / Tortoise git。
只需右键单击node_modules-> Tortoise git->添加以忽略列表。
这将为您生成.gitIgnore,并且您不会在暂存中再次找到node_modules文件夹。
答案 9 :(得分:0)
只需将不同的.gitignore文件添加到小型项目1和小型项目2中。每个.gitignore文件都应为/ node_modules,您可以使用。
答案 10 :(得分:0)
如果没有,它将自动创建一个.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
文件,您可以上传
答案 11 :(得分:0)
如果您的子项目/客户端 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 ------
答案 12 :(得分:0)
针对那些正在尝试上述答案但仍然面临问题的人
我最终尝试了几乎所有的答案,它解决了我忽略 node_modules 的问题,但只有在我提交更改之后!