gpt4 book ai didi

git - 如何与团队共享 .env

转载 作者:行者123 更新时间:2023-12-03 08:04:34 25 4
gpt4 key购买 nike

我对 .env 文件有疑问。我知道这是一个包含 API key 和密码等 secret 的文件。我还读到您不应该将其提交到像 GitHub 这样的 VCS。如果我一个人工作,这很好,但当然,我有团队成员。那么,我应该如何与团队中的其他人共享该文件呢?如果新开发人员加入,我是否必须通过电子邮件 .env 给他/她?

感谢您提前提供的帮助:)

最佳答案

正如您所提到的,将 secret 存储在存储库中并不是一个好主意。如果您正在讨论生产 secret ,那么通常您根本不希望这些 secret 出现在开发人员计算机上,并且您可以使用某种 secret 存储。例如,您的 CI 系统(例如 Travis CI 或 GitHub Actions)通常有一种方法来存储您在部署代码时可以使用的 secret 。这将使它们保持加密状态,除非您进行部署,否则它们不会被暴露。

其他一些环境也使用更通用的 secret 存储,例如 Vault。这不仅有利于生产,而且还可以用于存储开发 secret (应该不同并且访问权限有限)。如果您有在生产中使用的堡垒或 shell 主机,您可以授予开发人员访问该系统上的开发 secret 的权限,并在设置存储库时使用存储库中的脚本自动获取它们。然后它们将被存储在安全的位置,如果需要轮换它们,开发人员只需运行脚本即可获取新的。

一般来说,您应该尽可能地使用某种 secret 存储,并确保用户在获得访问权限之前经过完全身份验证(最好使用强密码和某种 2FA 机制)。如果您这样做,那么共享 secret 就会变得不那么麻烦,因为这只是配置对 secret 存储的访问权限的问题。

请注意,.env 文件还可以包含非 secret 内容,例如运行所需的其他环境变量,例如环境类型(开发或生产)。这些可以很好地存储在存储库中,如果您需要混合 secret 和非 secret 数据,您可以创建一个脚本,该脚本从模板文件中获取开发值并 merge 到开发 secret 中以创建 .env 。请务必在 .gitignore 中将 .env 文件标记为忽略,以免用户意外将其 checkin 。

关于git - 如何与团队共享 .env,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72831006/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com