Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rubyonrails.yml_Ruby On Rails - Fatal编程技术网

Ruby on rails rubyonrails.yml

Ruby on rails rubyonrails.yml,ruby-on-rails,Ruby On Rails,我只是想确保我没有误解这一点,但如果我在config/secrets.yml文件中使用环境变量,我还应该考虑将其推送到公共回购吗?我看到许多关于将此文件添加到git ignore以保护凭据的帖子,但如果它们作为环境变量传入,则应该不会有问题,对吗?如果它们作为环境变量传入,则根本没有问题,因为您在文件内容中看到的唯一内容就是变量名,而这不是秘密。因此,它可以毫无顾虑地推送到您的回购协议中。如果它们作为环境变量传递,则根本没有问题,因为您在文件内容中看到的唯一内容就是变量名,而这不是秘密。因此,它

我只是想确保我没有误解这一点,但如果我在config/secrets.yml文件中使用环境变量,我还应该考虑将其推送到公共回购吗?我看到许多关于将此文件添加到git ignore以保护凭据的帖子,但如果它们作为环境变量传入,则应该不会有问题,对吗?

如果它们作为环境变量传入,则根本没有问题,因为您在文件内容中看到的唯一内容就是变量名,而这不是秘密。因此,它可以毫无顾虑地推送到您的回购协议中。

如果它们作为环境变量传递,则根本没有问题,因为您在文件内容中看到的唯一内容就是变量名,而这不是秘密。因此,它可以毫无顾虑地推送到您的回购协议中。

您是正确的,如果它实际上不持有这些值,您可以安全地推送
secrets.yml

当我使用ENV(or)时,我通常只删除
secrets.yml
文件,并将ENV赋值移到相关的配置文件或初始值设定文件中。对我来说,这比回购协议中的机密文件更加清晰和模块化

然而,也有人可能会争辩说,将它们保存在secret.yml中也是很清楚的,因为Rails开发人员知道在那里查找,他们会立即发现需要将它们设置在ENV中


只是一些值得思考的东西。

你是对的,你可以安全地推送
secrets.yml,如果它实际上不包含这些值

当我使用ENV(or)时,我通常只删除
secrets.yml
文件,并将ENV赋值移到相关的配置文件或初始值设定文件中。对我来说,这比回购协议中的机密文件更加清晰和模块化

然而,也有人可能会争辩说,将它们保存在secret.yml中也是很清楚的,因为Rails开发人员知道在那里查找,他们会立即发现需要将它们设置在ENV中


只是一些值得思考的东西。

只要你把秘密放在gitignore中,并确保它们是变量,就可以了!你一定要看看Figaro,因为它能帮你处理这些问题

只要你把你的秘密放在gitignore中,并确保它们是变量,就可以了!你一定要看看费加罗,因为它为你处理这些问题

这些帖子是什么?这肯定不应该出现在gitignore文件中,但我只是好奇,这些帖子是什么?这肯定不应该出现在gitignore文件中,但我只是好奇?是的,当其他程序员来继续开发你的应用程序时,他会诅咒你必须在整个应用程序中定义和跟踪更改,而不是将所有更改放在一个地方!此外,对于开发、测试和生产环境,您将有不同的初始化。灾难即将发生。他们不必到处跟踪更改,因为相关的赋值(意味着将ENV值分配给Rails中的相关变量)将与它们的相对关注点/gem/等一起分组,并且不会有不同的初始值设定项,因为这是ENV的全部要点。换句话说,@Aleks刚刚证明,围绕ENV、secrets.yml等有不止一个学派。各种方法及其推理在《费加罗自述》的最后几节中得到了很好的说明。当你提到费加罗时,这意味着你将为这些秘密引入一颗新的宝石。尽管这可能是一个不错的选择,但有许多宝石可以添加,但这并不是必需的,如果您在设置环境这样的早期阶段就开始污染Gemfile,那么您可以很快开始拥有大量宝石,这就是为什么我只会使用一个简单的
secrets
,而不是使用一个新的gem来替换类似的功能。至少这是我的两分钱:)在这一点上我并不反对你,@Aleks,但我觉得这偏离了问题的轨道。OP没有询问何时或为什么使用ENV或ENV gem。此外,在我的回答中,我没有建议您使用Figaro只是为了处理机密(就个人而言,我只使用它来管理Heroku ENV)。我只是简单地解释了我在OP描述的案例(或类似案例,如使用Figaro)中倾向于使用的配置模式。是的,当其他程序员来继续开发你的应用程序时,他会诅咒你必须在整个应用程序中定义和跟踪更改,而不是将所有更改放在一个地方!此外,对于开发、测试和生产环境,您将有不同的初始化。灾难即将发生。他们不必到处跟踪更改,因为相关的赋值(意味着将ENV值分配给Rails中的相关变量)将与它们的相对关注点/gem/等一起分组,并且不会有不同的初始值设定项,因为这是ENV的全部要点。换句话说,@Aleks刚刚证明,围绕ENV、secrets.yml等有不止一个学派。各种方法及其推理在《费加罗自述》的最后几节中得到了很好的说明。当你提到费加罗时,这意味着你将为这些秘密引入一颗新的宝石。尽管这可能是一个不错的选择,但有许多宝石可以添加,但这并不是必需的,如果您在设置环境这样的早期阶段就开始污染Gemfile,那么您可以很快开始拥有大量宝石,这就是为什么我只会使用一个简单的
secrets
,而不是使用一个新的gem来替换类似的功能。至少这是我的两分钱:)在这一点上我并不反对你,@Aleks,但我觉得这偏离了问题的轨道。OP没有询问何时或为什么使用ENV或ENV gem。此外,在我的回答中,我没有建议您使用Figaro只是为了处理机密(就个人而言,我只使用它来管理Heroku ENV)。我只是简单地解释了我在