我们使用的是本地托管的私有 git 存储库。
我们将所有密钥嵌入到文件中。
我们不能只是从 git 历史记录中删除文件,因为这些文件包含密钥本身以外的功能代码。
我想出了以下策略,尽管它不起作用。
我想知道是否有办法让它工作。
- 首先删除所有密钥并修改代码以使用环境变量。
- 删除 .git 目录并使用
git init && git add .
重新初始化 -
git remote add origin [new-repo]
(我们只想共享干净状态) -
git remote add upstream [original-repo]
(我们仍然想从原始存储库合并)
它似乎不起作用,因为 git 在 new-repo
和 original-repo
之间看不到任何共同提交。
有没有办法克服它?
您不能通过仅将两个远程添加到一个本地存储库来共享提交。
添加两个远程仓库后,您应该分别从两个远程签出分支,这两个分支应该跟踪远程分支,例如
branch_a -> new_repo/branch_a
branch_b -> original_repo/branch_b
现在,您可以合并/变基两个本地分支branch_a branch_b,并将它们推送到远程。