我正在开发一个Ruby on Rails应用程序,使用git在利益相关者之间同步代码。该应用程序具有发送电子邮件的能力。每个利益相关者都有自己的SMTP提供商,在提供期间在config/initializers/smtp.rb
中定义。
ActionMailer::Base.smtp_settings = {
address: "smtp.emailme.com",
port: 587,
domain: "emailme.com",
authentication: "plain",
enable_starttls_auto: true,
user_name: "me@emailme.com",
password: "Password"
}
.gitignore文件定义为:
*.rbc
capybara-*.html
.rspec
/log
/tmp
/public/system
/coverage/
/spec/tmp
**.orig
rerun.txt
pickle-email-*.html
## Environment normalization:
/.bundle
/vendor/bundle
# these should all be checked in to normalize the environment:
# Gemfile.lock, .ruby-version, .ruby-gemset
Gemfile~
config/initializers/smtp.rb
.gitignore文件在Github和我的计算机上是相同的。我试着指定
配置/初始化/ smtp.rb
或
/config/initializers/smtp.rb
但无论如何,我的计算机上的smtp.rb
文件会被Github上的文件覆盖。反之亦然。
我错过了什么?
答案 0 :(得分:1)
如@oliver所述,该文件不应存在于git上。您可以通过执行
从git中删除该文件--cached
请注意.gitignore
,这一点非常重要,否则您可能会丢失本地目录中的文件。此选项仅从repo中删除文件。
如果您要将目录添加到javafx.application.Application:
谢谢!
答案 1 :(得分:0)
.gitignore 会告诉git忽略git当前未跟踪的文件的更改。
运行cp config/initializers/smtp.template.rb config/initializers/smtp.rb
以阻止git跟踪文件的未来更改。
使用虚拟值创建{{1}},然后提交+推送您的更改。
指示任何新的利益相关者运行{{1}}并在设置开发环境时更新文件。