web-dev-qa-db-ja.com

git ignore .envファイルが機能しない

laravelプロジェクトがあります。ルートディレクトリには次の4つのファイルがあります。

.env .env.example .env.local .env.staging

私は.gitignoreファイルを持っていて、これらの4つのファイルを次のように.gitignoreに次々とリストしています

.env
.env.example
.env.local
.env.staging

私のgitリポジトリには.envまたは.env.exampleが含まれていませんが、.env.localおよび.env.stagingは含まれています。私は思いつく限りのことをすべて試しましたが、これらの2つのファイルをGitlabと同期し続けます。

これを引き起こしている可能性のあるアイデアはありますか?

ご協力いただきありがとうございます!

41
Matt

git rm を使用:

追跡するファイルをすでに追加している場合は、追跡からそれらを削除する必要があります。

git rm env.local --cached
git rm env.staging --cached
git commit -m "Stopped tracking env.local, and env.staging"

これで、これらのファイルを追跡することなく、ブランチのクローンを作成できるはずです。

注:これらのファイルの内容は履歴にあり、機密データが含まれている場合は 完全に削除する 削除する前に履歴から削除する。

121
Bryce Drew

このコマンドを実行するだけです。

git rm .env --cached
git commit -m "Stopped tracking .env File"

laravelには、データベースに接続するための.envファイルが含まれているため、キャッシュから.envファイルを削除する必要があります。

6
Chirag Ingde