Posted at

database.yml 等の Git管理

More than 3 years have passed since last update.

Railsプロジェクトを作成し、Git等のバージョン管理システムを使用してプロジェクトをそのまま git addgit commitしてしまい公開してしまうことがある。しかし、セキュリティ上思わしくない設定ファイル等がある。

database.ymlsecrets.yml等だ。

そこで一度バージョン管理に入れてしまった場合に、バージョン管理から外す方法。

$ git rm --cached database.yml

--cachedオプションを使用しないと、ファイル自体削除されてしまうので注意。

そして再びバージョン管理されないように.gitignoreに下記を必ず追記する。

/config/database.yml

プロジェクトをチームで共有する場合には、database.ymlをコピーしてdatabase.yml.sample等を作成し、これをバージョン管理しておく方法がよい。当然、その中身に重要情報を記述してしまっては意味が無いので注意。

ちなみに、万が一--cachedオプションを使用しないで、ファイル自体を削除して焦ってしまった時のリカバリ方法。

$ git reset HEAD database.yml

$ git checkout database.yml

これは参考までに覚え書き。