我在 GitHub 和我的私有 Amazon 实例上都有一个 git 存储库,并且我通过唯一的提交更新了两者。
有一种方法可以database.yml
只将文件提交到我的私人存储库而不是 GitHub 上吗?
如果有帮助,我正在使用 Capistrano 进行部署。
我在 GitHub 和我的私有 Amazon 实例上都有一个 git 存储库,并且我通过唯一的提交更新了两者。
有一种方法可以database.yml
只将文件提交到我的私人存储库而不是 GitHub 上吗?
如果有帮助,我正在使用 Capistrano 进行部署。
在过去的几天里,我没有找到这个问题的答案,但后来我解决了我的问题,所以我会说我做了什么来让事情正常进行。
由于我不必修改文件database.yml
,我解决了我的问题,手动将其复制到我的 Amazon 实例并将其添加到.gitignore
.
然后,我添加了一个任务deploy.rb
来链接database.yml
到当前部署目录
# copy db config
after "deploy:update_code", :copy_db_config
desc "copy db config file"
task :copy_db_config do
run "ln -s ~/path/where/I/copied/database.yml #{release_path}/config/database.yml"
end
希望这有帮助。
这里提供了另一种解决方案。如果您之前定义了环境变量,则可以在databases.yml
文件中使用它们。
username: <%= ENV['POSTGRES_USERNAME'] %>
password: <%= ENV['POSTGRES_PASSWORD'] %>