31

我在私人存储库后面的 GitHub 上有一个项目。我想公开回购。但是,我的项目使用密钥。

如何在保护这些密钥的“历史”的同时公开项目?我猜我是 SOL,应该简单地使密钥无效以防止它们的使用。

请注意,这与 如何开源使用 API 密钥的应用程序不是同一个问题

或者

当应用程序使用个人 API 密钥时,如何处理“开源”应用程序?

由于我的项目已经在 Git 上,因此可以轻松查看整个源代码历史记录。我想我可以做的是在隐藏 API 密钥的情况下分支一个单独的项目,并将该 repo 公开。但是随后用户会错过整个分支历史,他们可能会对此感到好奇(我知道我会的)。

4

3 回答 3

26

您可以使用像git filter-branch. GitHub 的帮助页面上有一个很好的解释。

于 2010-11-04T21:46:58.530 回答
0

我使用了一个新的 .gitignore ,它已经排除了所有私有内容/密钥并将所有内容复制到一个新的存储库中。如果我需要再次访问旧的 git 历史记录,我会留下一份副本。

于 2018-08-10T16:11:31.657 回答
0

查看git-castlehttps://www.npmjs.com/package/git-castle)!

您可以将贡献者添加到白名单并允许他们使用您的密钥。

于 2020-06-20T23:15:57.090 回答