[rails] ローカル環境のみでデータを保存する方法


この記事ではrails5.2.3を使用しています

ローカルのみで保存したい画像データが、プッシュするとリモートにも反映されてしまう問題が発生しました。

解決方法

.gitgnoreでGitで管理しないファイルを指定する。

.gitgnoreとは

railsのファイルにはデフォルトで.gitgnoreというファイルが存在しています。

gitignoreとは、Gitで管理しないファイルを指定することが出来るファイルの事です。
引用:https://pikawaka.com/word/gitignore#3.%20git%20pushまで実行した場合(コミット履歴が残る)

手順

ローカルで保存するデータはあくまでテスト用なので、リモート環境にpushしたくありません。
今回、public/uploads以下に保存されているimageは、全てテスト用に保存したデータなので、今回は.gitgnoreファイルにpublic/uploadsを追記します。

.gitgnore
public/uploads

これで、public/uploads以下のデータはローカルのみで管理されるようになります。

すでにローカルからプッシュされた画像データがリモートに保存されている状態であっても、上記の作業を行った後に、再度commit→pushするとリモートに保存されたデータが消えて、今後ローカルで保存したデータもリモートには保存されなくなります。

参考