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

3 version-control environment-variables reactjs

我看过一些中等博客和 StackOverflow 的答案,我不应该将.env文件添加到版本控制中。

我非常理解为什么需要这样做。

但是在处理 Reactjs 项目时呢?

Reactjs 适用于前端,所有环境变量都是公开的,即使它捆绑用于生产,任何人都可以使用 Web 浏览器阅读它。

我有 2 个 env 文件,.env.production用于生产和.env.staging暂存。环境变量值在构建时被放入捆绑版本。这些文件在所有其他团队成员中都是相同的。

实际上,这些文件中根本没有秘密。

问题是:

我应该将这 2 个文件添加到版本控制中还是必须手动将这些文件分发给其他团队成员?那么为什么?

pra*_*ann 5

不。

首选方法是拥有一个名为.env.sampleThis的文件,它将包含其中包含随机值或没有值的所有键。任何克隆 repo 的开发人员都将了解运行/构建项目所需的 env_vars。

在团队内部,有一个秘密共享机制。有很多工具可以解决这个问题。

第一次克隆 repo 后,开发人员需要运行cp .env.sample .env并复制来自秘密管理器的值。

确保添加.env.gitignore这样没有人意外地将.env包含的秘密推送到存储库。