假设我有一个 git 存储库,app.py
并且我不小心将 API 密钥(或其他秘密)作为明文包含在我尚未推送到远程app.py
的提交中(假设在 Github 上)。
要在本地撤消和修复此提交,我可以:
git reset --soft HEAD~1
# ...make changes to remove the plain-text API key from app.py
git add .
git commit -m "some message"
在本地,我仍然可以结帐到我不小心提交明文 API 密钥的 ref 并在以下位置查看秘密app.py
:
git reflog
# look for ref where I accidentally committed API Key
git checkout <ref from above>
如果我将删除明文 API 密钥的提交(即使用"some message
上面的消息提交)推送到远程,有没有什么方法可以让远程仍然能够“看到”明文中包含 API 密钥的引用?这个秘密是否可能最终出现在 Github 上(即使只是在他们的服务器上,不一定通过网站/公共 API 可见)?
首先十分感谢!