.env 应不应该放到 git 中?

2020-04-10 15:27:23 +08:00
 FaiChou

Gatsby.js Link

Please note that you shouldn’t commit .env.* files to your source control and rather use options given by your Continuous Deployment (CD) provider.

在 Gatsby.js 文档中提到, .env.* 不应该提交到 git 中,但是 .env.* 里的变量不都是给项目用的吗?最终编译后可以在代码中找到对应的值,所以对用户而言,这些变量都是 public 的。

所以我觉得 .env.* 可以放到 git 中,即使是一个开源项目。

8514 次点击
所在节点    程序员
55 条回复
wangyzj
2020-04-10 22:16:44 +08:00
.env.example
当然作为小透明
我依然会放入.env
WispZhan
2020-04-10 22:59:05 +08:00
两个角度,结合起来:
1. 看你是什么项目。 团队私有项目,开源项目? ……
2. 看 env 里是啥。build / package 参数, 密钥, 服务器地址? ……

涉及敏感信息的肯定不会直接放进去(脱敏), 否则无妨。
qiaobeier
2020-04-10 23:04:36 +08:00
肯定不能啊。。。
.env.example + 文档啊。
zhw2590582
2020-04-10 23:08:59 +08:00
这要看你的.env 有什么信息,没什么重要信息就无所谓啦
canadahetian
2020-04-10 23:11:09 +08:00
肯定不应该,GIT 就放源码,其他任何东西不要放进去哦.
现在用 docker,基本不用 vevn 了
yuxing1171
2020-04-11 00:07:10 +08:00
肯定不应该啊
amosasas
2020-04-11 00:37:33 +08:00
不应该 甚至应该建立一个专门的 secret server 来存放.env 然后分为.env.development .env.test .env.production 这样 然后分权限 跟 CI 环境设置好
nvkou
2020-04-11 00:54:07 +08:00
.env 是给你程序用的
你程序会不会泄露我管不着
但你直接敞开大门欢迎来搞就过分了
mattxlee
2020-04-11 01:42:37 +08:00
我的理解是:分开来的,.local 的都不要放,其它的放,然后在写 env 变量的时候涉及密钥之类的东西都只能放在.local 里
ljpCN
2020-04-11 02:09:47 +08:00
比如你 mapbox 的 token,比如你测试环境下的后端域名,要么是要隐蔽,要么是部署时有不同的值,那么就不该推到仓库里。
buffzty
2020-04-11 02:37:50 +08:00
2 个 env 文件
.env 通用配置 上传到 git
.env.local 本地隐私配置 不上传到 git
jenkins 里 服务器隐私配置
sansanhehe
2020-04-11 09:10:04 +08:00
.env
.env.example
.env.local
.env.dev
.env.stg
.env.prd
MengiNo
2020-04-11 09:30:58 +08:00
不是涉密问题。 比如你的 env 里有个 app_name 你自己开发写的是 比如 my blog 或者更浮夸的 my secret base 。这个地方搞来搞去人家肯定要改的呀。既然抽象搭配 env 大多都是这种方便改的高度抽象的统一的东西。与其暴露你写的是什么(甚至还要让人猜你这个 my secret base 是意思是什么 这栏应该写什么) 还不如给个 env.example 然后 app_name 那栏写 YOU PROJECT NAME 这样注释性的话语 让他自己 cp 一份改一下。
jay4497
2020-04-11 14:24:52 +08:00
我理解的,git 仓库里就不应该放那些会因为环境不同而变来变去的东西,.env 就是典型,类似的还有 .idea 、.vscode 等。。。
starsriver
2020-05-12 08:27:14 +08:00
.env.example

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/661188

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX