出于安全原因,一些教程建议不要将 key 保存在 GitHub 中,而是将文件保存在 .gitignore 中,例如一些 Social Networks,如 Facebook 或 Linkedin 在 Info.plist 文件中创建一个 key 。
Info.plist 包含应用程序的许多其他设置,必须提交。
我怎样才能保持安全我的 key 并正常提交Info.plist 。
Info.plist 示例(CFBundleURLSchemes 和 FacebookAppID )
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb355414950742780</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string>355414950742780</string>
Best Answer-推荐答案 strong>
尝试从不推送 Info.plist 文件太冒险了。
not 版本更安全(git rm --cached ,并添加到 .gitignore )
然后您可以使用 content filter driver , 使用 .gitattributes declaration :
注册一个 smudge 脚本,该脚本将生成包含 git checkout 上的敏感信息的文件。
(图片来自“Customizing Git - Git Attributes”,来自“Pro Git book”)
“smudge ”脚本(您必须编写)需要:
- 获取 key (从存储库外部的来源,这样不会有错误添加和推送的风险)
- 生成
Info.plist 文件,使用跟踪的 模板 Info.plist.tpl 并在其中替换占位符值。<
这意味着:
- 将模板
Info.plist.tpl 添加到 git repo
- 生成文件
Info.plist 在 .gitignore 文件中声明,并且从不进行版本控制(并且从不推送)。
关于ios - 如何在 GitHub 中保存或安全避免 Facebook 或 LinkedIn 等社交网络的 key ,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/34471477/
|