如何从 GitHub 永久删除泄露的 .env 文件

#编程技术 2024-09-03 10:00:00 | 全文 520 字,阅读约需 2 分钟 | 加载中... 次浏览

👋 相关阅读


.env 文件是什么?

.env 文件,全称 environment file,中文翻译为环境配置文件,是一种用于存储应用环境变量的文本文件。它通常位于项目的根目录,不随代码一同提交到版本控制系统(如 Git)中。

.env 文件的作用

为什么不把 .env 文件提交到版本控制系统?

如何永久从 GitHub 上删除泄露的 .env 文件

1、删除 .env 文件并提交

首先,从你的仓库中删除 .env 文件并提交更改:

git rm --cached .env
echo ".env" >> .gitignore
git add .gitignore
git commit -m "Remove .env file and add to .gitignore"

2、使用 filter-branch 从历史记录中删除 .env 文件

使用 Git 的 filter-branch 从整个历史记录中删除 .env 文件:

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch .env' --prune-empty --tag-name-filter cat -- --all

3、强制推送更改

运行 filter-branch 后,你需要强制推送更改到远程仓库:

git push --force --all
git push --force --tags

4、清理本地仓库

最后,清理本地仓库以删除旧的引用:

rm -rf .git/refs/original/
git reflog expire --expire=now --all
git gc --prune=now --aggressive

5、撤销任何泄露的凭证

和任何方法一样,如果你的 .env 文件包含敏感信息,立即撤销并重新生成这些凭证,以确保安全。

VIA

How to remove a leaked .env file from GitHub permanently… - DEV Community https://dev.to/kodebae/how-to-remove-a-leaked-env-file-from-github-permanently-3lei

·




×