Firebase:我应该将 GoogleService-Info.plist 添加到 .gitignore 吗?

Firebase: Should I add GoogleService-Info.plist to .gitignore?

我将 Firebase 用于我想开源的 iOS 项目。 我应该在上传之前将 GoogleService-Info.plist 添加到 .gitignore 我在 Github 上共享项目吗?

我知道它包含我的 API 密钥、客户端 ID 等,公开这些可能不安全?

虽然如果您提交 GoogleService-Info.plist(类似地,在 Android、google-services.json 上)并不是世界末日,但出于一个重要原因,您最好不要使用它: 您明确表示,构建您代码的其他人应该设置自己的 Firebase 项目来托管其配置和数据(因为您的项目根本不会在缺少该文件的情况下构建)。 此外,如果您的项目中包含全球可写资源,您可以预料那些如此轻易掌握您的应用程序和配置的人会无意中开始向其中写入数据,这可能不是您想要的。

需要 Firebase 设置的开源项目最好在自述文件中说明任何想要使用此应用程序的人都需要完成设置 Firebase 的过程。

这些配置文件中的数据并不完全是私有的 - 它们可以很容易地从 IPA 或 Android APK 中提取。将它们作为应用代码的一部分进行共享可能不符合您的最佳利益。