在 AWS Amplify 上部署一个网站,使用该网站调用 lambda 函数来与 stripe 连接。一切都正常,直到我决定将我的代码推送到 github。然后我被提醒我无法使用敏感的 API 密钥推送文件(我知道我的错误)。然后我用 .env 文件更改了它以尝试再次推送它,但后来我收到警报它仍然在提交历史记录中。我询问聊天 GPT 该怎么做,它告诉我必须“从提交历史记录中删除 API 密钥,以符合 GitHub 的安全检查”。步骤之一如下
重写 Git 历史记录以删除密钥:运行此命令以从所有以前的提交中删除文件:
git filter-branch --force --index-filter \
git rm --cached --ignore-unmatch amplify/team-provider-info.json" \
--prune-empty --tag-name-filter cat -- --all
此命令将从提交历史记录中删除该文件,而不影响其余项目文件
Force-Push to GitHub:将清理后的历史记录推送到GitHub:
git push origin main --force
然后我在放大部署日志中遇到了此错误
✖ There was an error initializing your environment.
43
2024-11-02T01:36:14.491Z [INFO]: 🛑 No CloudFormation
template found at
/codebuild/output/src3605424703/src/Fictional-
records/amplify/backend/function/stripeCheckout
/stripeCheckout-cloudformation-template.json
目前我已经尝试了
‘放大推动’ 得到了
拉取后端环境main时出错
扩大功能更新
无法真正撤消提交,因为从技术上讲,该文件从未被推送到 github
如果有人知道发生了什么,请告诉我 我不确定到底删除了什么或如何让事情恢复正常
发现只需删除我的整个放大文件夹和配置,然后将放大重新配置到应用程序即可。我相信上面的 git 命令实际上意外删除了我的云形成模板