【问题标题】:Pushing create-react-app to github node_modules folder has not been copied将 create-react-app 推送到 github node_modules 文件夹尚未复制
【发布时间】:2019-03-19 23:38:37
【问题描述】:

我通过在 node.js 命令中运行 npx create-react-app my-app 创建了一个新文件夹 my-app。创建文件夹后,我想将整个内容上传到我的 github 帐户中的 repo,所以我打开 git bash 并运行命令将所有文件和文件夹推送到我创建的新 repo。更新存储库后,我发现所有文件都是 node_modules 文件夹的副本。我实际上尝试在 git bash 命令窗口中运行 npx create-react-app 命令,但失败了。所以我必须先在 node.js 中执行,然后在 git bash 中运行命令。此外,repo 是在没有自述文件的情况下创建的。我在这里做错了吗?为什么文件夹被留下了。谁能帮忙。

【问题讨论】:

    标签: node.js reactjs git github


    【解决方案1】:

    create-react-app 带有一个名为 .gitignore 的文件。此文件确保不会将不必要的文件提交给 git。这就是你的 node_modules 没有被提交并推送到 github 的原因。

    • node_modules 包含在 .gitignore 中的主要原因是不需要将文件推送到 github。
    • 您可以随时从项目的 package.json 文件中获取 node_modules 文件夹。
    • 第二个原因是 node_modules 文件夹很大。将其推送到 github 是不利的。

    如果你想从 package.json 文件中获取 node_modules 文件夹。你 只需要从项目的根目录运行以下命令 此 package.json 存在时的目录

    如果使用纱线 -

    $ yarn install
    

    如果使用 npm -

    $ npm install
    

    【讨论】:

      【解决方案2】:

      这并没有错,create-react-app 有很多功能,其中之一就是自动创建 .gitignore 文件。如果你检查你的工作目录,在根目录下就有那个文件。

      基本上这个文件的作用是告诉 git 跟踪什么和忽略什么,完全忽略 node_modules 文件夹是很常见的,因为当你克隆你的 repo 时,你只需要你的 package.json 来 npm 安装你的依赖项,所以绝对不需要上传大量数据(node_modules 可能会很重)。

      gitignore docs

      【讨论】:

        【解决方案3】:

        这是因为 create-react-app 是自举的并且带有文件.gitignore。 其中

        node_modules 被忽略

        为什么它们会被忽略,因为它们是您可以随时使用基于 package.json 文件的npm install 安装的库。

        在 package.json 中有 dependencies 的部分,即你的 node_modules。和npm install 将使它们可用。

        "dependencies": {
            "bootstrap": "^4.1.3",
            "fullcalendar-reactwrapper": "^1.0.7",
            "moment": "^2.22.2",
            "react": "^16.5.2",
            "react-date-picker": "^7.0.0",
        }
        

        Git - Ignore node_modules folder everywhere

        【讨论】:

          【解决方案4】:

          /node_modules 文件夹位于由 create-react-app 创建的 .gitignore 文件中。 如果您从 .gitignore 文件夹中删除该条目,您应该能够提交 node_modules。

          【讨论】:

            猜你喜欢
            • 2018-07-06
            • 2019-12-01
            • 2021-05-21
            • 2021-12-20
            • 2023-02-09
            • 1970-01-01
            • 2017-03-17
            • 1970-01-01
            • 2021-01-17
            相关资源
            最近更新 更多