为了从 GitHub 存储库中删除提交,典型的建议是在本地删除提交(例如,通过git rebase -i)并将修改后的分支强制推送到原始远程分支上。
但是,如果有问题的远程分支是拉取请求的一部分,GitHub 现在会很有帮助地显示消息
<user>将<remote_branch>分支从<old-commit>到<new-commit>
和显示的链接以查看之间的差异<old-commit>和<new-commit>。(这似乎是最近的变化,我不记得以前遇到过这个消息。)
根据这里的另一个答案,GitHub 应该定期删除不再被引用的提交。但是因为他们确实在他们的 UI 中引用了旧的提交,我怀疑他们会保留它。(我已经很长时间没有看到这个明显的新功能了,也没有发现任何官方提到它。)
是否可以以防止其他用户看到该提交的方式删除远程提交?或者至少可以从 PR 讨论页面中删除上面的消息?有没有其他方法可以更改 PR 底层分支的内容,而每个人都无法从 PR 页面访问旧提交(至少除非他们知道提交哈希)?
(这个问题与删除密码等敏感信息无关 - 我知道无论之后是否有可能删除提交,这些都应该被视为受到损害。)
虽然通常用于删除敏感数据,但这也适用于删除提交/文件。来自GitHub 的文档:
如果您将密码或 SSH 密钥等敏感数据提交到 Git 存储库,则可以将其从历史记录中删除。要从存储库历史记录中完全删除不需要的文件,您可以使用 git filter-branch 命令或 BFG Repo-Cleaner 开源工具。
请参阅上面的文档链接以了解两者的用法。
| 归档时间: |
|
| 查看次数: |
1924 次 |
| 最近记录: |