如何在 git push 之前从 Android 项目中删除 API 密钥
Posted
技术标签:
【中文标题】如何在 git push 之前从 Android 项目中删除 API 密钥【英文标题】:How to remove API key from Android project before git push 【发布时间】:2021-12-22 18:48:56 【问题描述】:我想知道如何隐藏 API 密钥并将其替换为 假设是空字符串
在推送到 Github 或任何源代码管理之前。
例如,我有类似的 API 密钥
object Constants
const val API_KEY= "GOOGLE_API_KEY"
如何在推送时删除实际的并添加随机或空字符串。
【问题讨论】:
见gist.github.com/loftywaif002/f2ebe2024ad73d6a579285dcba250465 这能回答你的问题吗? How can I save my secret keys and password securely in my version control system?。通常,密钥不应该被硬编码或提交到存储库。您应该像从环境变量中一样动态检索它们,使用安全保险库服务或类似方法。 假设您可能已经添加了密钥,重要的是从任何较旧的提交中删除它们。我建议使用 BFG 回购清理器来执行此操作。 【参考方案1】:秘密经理
看看secret manager。
Git 钩子
实现此目的的一种方法是使用git hooks。
在pre-commit
上,使用(例如)sed
来查找和替换您的 API_KEY。您甚至可以在post-commit
中恢复它。
调试资源
另一种方法是将 API_KEY 添加到 debug
变体文件夹中的资源文件中。将该文件添加到您的.gitignore
,以便您可以在代码中使用 API_KEY,但永远不会提交。
【讨论】:
以上是关于如何在 git push 之前从 Android 项目中删除 API 密钥的主要内容,如果未能解决你的问题,请参考以下文章
Angular:运行Git push时如何强制运行单元测试?