我有一个非常简单的 Rails 应用程序,当用户注册时会发送一封欢迎电子邮件。我正在使用我的 gmail 帐户发送消息,并且我的 gmail 帐户的密码存储在应用程序中,如下所示:
应用程序.rb
require File.expand_path('../boot', __FILE__)
require 'rails/all'
if defined?(Bundler)
# If you precompile assets before deploying to production, use this line
Bundler.require(*Rails.groups(:assets => %w(development test)))
# If you want your assets lazily compiled in production, use this line
# Bundler.require(:default, :assets, Rails.env)
end
ENV.update YAML.load(File.read(File.expand_path('../application.yml', __FILE__)))
module TestMailApp
class Application < Rails::Application
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => "my address",
:user_name => "my_gmail_name",
:password => ENV["MAIL_PASSWORD"],
:authentication => :plain,
:enable_starttls_auto => true
}
config.action_mailer.default_url_options = {
:host => "my address"
}
应用程序.yml
MAIL_PASSWORD: "my_password"
我想隐藏存储在我的 git 存储库中的 application.yml 文件中的密码。我尝试将 application.yml 添加到我的 gitignore 文件中,但这只会使我的应用程序崩溃。
如何在我的 git 存储库中隐藏此密码,以便我的应用程序仍然可以运行,并且我不必将我的应用程序放入私有存储库中?