我想在我的网站上进行源代码控制。有很多文件,所以我只去了 git add -a
不幸的是,我不小心提交并推送了一个名为 credentials.txt 的文件,其中包含我的 ftp 和 db 详细信息。我试过删除文件,提交然后推送,但是当我在历史记录中浏览我在 github 上的存储库时,它仍然显示文件。
有没有办法摆脱这个?
我想在我的网站上进行源代码控制。有很多文件,所以我只去了 git add -a
不幸的是,我不小心提交并推送了一个名为 credentials.txt 的文件,其中包含我的 ftp 和 db 详细信息。我试过删除文件,提交然后推送,但是当我在历史记录中浏览我在 github 上的存储库时,它仍然显示文件。
有没有办法摆脱这个?
Github 有一个关于这个确切主题的很好的指南。它解释了如何将其从存储库中取出,以及如何处理可能已经在公众手中的数据。
您必须使用git filter-branch
. Andy 已在 github 上发布了一个指南链接,用于执行此操作。
无论如何,删除文件并不能消除损害——在此期间提取你的 repo 的任何人都拥有它,至少它在 github 的基础设施中。所以,不要打扰。
与其试图隐藏发生的事情,不如进行损害控制并更改密码。不要试图隐瞒已经泄露的秘密——引用本杰明·富兰克林的话,“三个人保守秘密的唯一方法就是两个人死了”。
如果它在 Internet 上只是片刻,可以肯定地认为它已被十几个人保存。如果你不从这个角度工作,它可能会回来咬你。