使用squash或fixup在多大程度上可以成功擦除github中的数据?

时间:2019-05-21 02:31:50

标签: git github

假设我们有这样的提交历史记录

890xxx more code changes
567zzz delete private data
345cab commit with private data
123abc init commit

如果我将其压扁或修正为

890xxx more code changes
123abc init commit

我已经“清理”数据了吗?克隆了此存储库的未来用户能否在345cab中意外提交数据?

(我确实意识到数据在推送时仍然暴露,gh的服务器仍然在某处)

1 个答案:

答案 0 :(得分:0)

首先,请注意一点。压缩后,more code changes的父级更改为init commit,因此其哈希不再是890xxx。但我很清楚您只是出于说明目的复制了哈希。

回答您的问题。如您所说,您已成功将更改推送到服务器。因此,在服务器中,从当前指向more code changes的尖端开始,这些清理的提交 reachable 更长。我假设该提示名为master

现在这是您要关注的重点:请从master以外的任何提示中仔细检查服务器中的这两个清理的提交是否仍然可达

如果回答为“否”,则将把这两个提交视为“已放弃” /“未使用”,因此将在某个时间从服务器的存储库中删除。

根据this,“某个时间”每天最多发生一次,由一次推送自动触发。