如何在GitHub中保存或安全地避开Facebook或LinkedIn等社交网络的密钥

时间:2015-12-26 12:49:43

标签: ios facebook git github linkedin

有些教程建议不要在GitHub中为安全性原因保存密钥,将文件保存在.gitignore中,但例如某些社交网络< / strong>例如FacebookLinkedinInfo.plist文件中创建密钥。

Info.plist包含应用程序的许多其他设置,必须提交。

如何保留安全我的密钥并正常提交Info.plist

Info.plistCFBundleURLSchemesFacebookAppID

的示例
<key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>fb355414950742780</string>
            </array>
        </dict>
    </array>
<key>FacebookAppID</key>
<string>355414950742780</string>

1 个答案:

答案 0 :(得分:1)

尝试永不推送Info.plist文件风险太大 版本(git rm --cached <File>更安全,并添加到.gitignore

更安全

然后,您可以使用content filter driver使用.gitattributes declaration

注册一个smudge脚本,该脚本生成包含git checkout敏感信息的文件。

enter image description here (图片来自&#34; Customizing Git - Git Attributes&#34;,来自&#34; Pro Git book&#34;)

那&#39; smudge&#39;脚本(你必须写)需要:

  • 获取密钥(从源外部回购,这样就没有冒险添加和推送的错误)
  • 生成Info.plist文件,使用跟踪的模板 Info.plist.tpl并在其中添加占位符值。

这意味着:

  • 模板Info.plist.tpl已添加到git repo
  • 生成文件Info.plist.gitignore文件中声明,从不版本化(从不推送)。