reactjs - 我是否必须在 react 项目中将 .env 文件添加到版本控制中?

标签 reactjs version-control environment-variables

我看过一些我不应该添加的中等博客和 StackOverflow 答案 .env文件到版本控制。
我非常理解为什么需要这样做。
但是在处理 Reactjs 项目时呢?
Reactjs 适用于前端,所有环境变量都是公开的,即使它捆绑用于生产,任何人都可以使用 Web 浏览器阅读它。
我有 2 个 env 文件,.env.production用于生产和 .env.staging用于登台。环境变量值在构建时被放入捆绑版本。这些文件在所有其他团队成员中都是相同的。
实际上,这些文件中根本没有 secret 。
问题是:
我应该将这 2 个文件添加到版本控制中还是必须手动将这些文件分发给其他团队成员?那么为什么?

最佳答案

不。
首选方法是拥有一个名为 .env.sample 的文件。这将包含其中包含随机值或没有值的所有键。任何克隆 repo 的开发人员都将了解运行/构建项目所需的 env_vars。
在团队内部,有一个 secret 共享机制。有很多工具可以解决这个问题。
第一次克隆 repo 后,开发人员需要运行 cp .env.sample .env并从 secret 管理器复制值。
确保添加 .env.gitignore所以没有人不小心推了.env包含 repo 的 secret 。

关于reactjs - 我是否必须在 react 项目中将 .env 文件添加到版本控制中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62709053/

相关文章:

javascript - 为什么我使用 Next.js (React) 构建的 Shopify 应用加载速度如此缓慢?

reactjs - 将一行移动到顶部/底部或任何索引 ag-grid react

ReactJS:如何监控重新渲染过程?

javascript - 如何使用 React + Flux 快速渲染 >10000 个项目?

Delphi构建服务器: find out which projects are affected by commit

sql-server - 如何跟踪源代码管理中的数据库更改?

添加后 git 仍未跟踪

tomcat CATALINA_HOME 环境变量问题

php - 通过 Laravel 更新 .env 值

java - 在环境变量中添加了JAVA_HOME,但tomcat说看不到它