Git, capistrano i deploy, pominięcie pliku

Mam następujące pytanie, mam w repo plik database.yml (początkowy), dodałem go już też do gitignore, żeby mi nie poszły do repo hasła itd, ale mam problem. Jak zrobić, aby podczas deployu przez capistrano, nie nadpisywało mi na serwerze tego pliku?

Mogę go jakoś wykluczyć w capistrano, lub po prostu całkiem wywalić z repo?

Jeżeli plik był na początku w repo, to dodanie do .gitignore nic nie zmienia. Zrób:

git update-index --force-remove config/database.yml

Hmm… Niby fajnie skasowało z repo, tylko nie pomyślałem, że jak teraz zrobiłem deploy, to nowa wersja na serwerze tez jest bez tego pliku, czyli dalej w sumie wychodzi na to samo, jak dla mnie, bo musze to ręcznie poprawiać.

Da się to jakoś inaczej zrobić?

Dzięki za błyskawiczną odpowiedź :slight_smile:

Najprościej jest ustawić w capistrano, żeby zrobiło Ci symlinka do shared/config/database.yml podczas deployu

Dzieki za podpowiedź, zaraz potestuje :slight_smile:

W razie gdyby ktoś po przeczytaniu dalej nie mógł sobie poradzić:

namespace :db do task :symlink do run "ln -nfs #{shared_path}/templates/database.yml #{release_path}/config/database.yml" end end