【问题标题】:Adding react build files to a Git repository将反应构建文件添加到 Git 存储库
【发布时间】:2019-12-28 00:41:39
【问题描述】:

我正在尝试将 npm run build 在 React 应用程序中创建的构建文件添加到 Git 存储库。

npm run build 生成的文件被我在 Django 上的后端服务器直接使用。我的后端(在 Django 中)和前端(在 React 中)是两个不同的 Git 存储库。

这是我面临的问题。

  1. 每次我运行npm run build 时,它都会创建具有不同哈希值的新文件。如果我继续添加所有文件,我的 git 存储库的大小将会增加。我尝试通过运行 git filter-branch --tree-filter 'rm -rf build/static' HEAD 从 git 中完全删除旧文件。但是由于这重写了历史,我每次都必须使用git push--force,这感觉不对。

  2. 我可以通过直接在服务器上创建构建来避免将静态文件一起添加。这会有所帮助,但是在后端工作的每个人都必须在本地构建静态文件,这意味着他们必须安装 node 和 react,这对于后端开发人员来说可能很麻烦。

有没有更好的方法来做到这一点?我该如何解决这个问题?

【问题讨论】:

  • Django 应该处理整个堆栈。即使前端和后端团队分开,后端代码与前端的集成也应该不断发生,否则,在我看来,对 Django 的需求就不大了。有一些方法可以将 hb React 与 Django 集成,但您不应该在 Git 存储库中将其分开。后端和前端可以有两个分支,但主分支应该放在一起。
  • @Yoomama 感谢您的评论。我相信这个博客是关于本地发展的。我更关心生产构建,我需要在 django 应用程序中通过 react 提供最终构建。在我看来,扩展后端和前端也不是一个好的解决方案。
  • 我不使用 React,当你创建一个新的 React 项目时,应该有一个 .gitignore:github.com/facebook/create-react-app/blob/master/.gitignore 我注意到你不应该将你的 build 目录推送到 Git回购。这应该可以解决问题,然后您可以坚持一个主分支。

标签: django reactjs git npm


【解决方案1】:

关注 Facebook 的 create-react-app 代码库:https://github.com/facebook/create-react-app/blob/master/.gitignore

在他们的 gitignore 中,他们明确地不推送构建目录。这应该可以清除这些哈希问题。

【讨论】:

    猜你喜欢
    • 2017-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多