【发布时间】:2011-01-16 16:34:26
【问题描述】:
我已经开始将我的私人 subversion 项目切换到 git (Github) 并将代码发布给公众。因此,我是一个 git 新手。
很遗憾,一个项目的修订版包含机密数据。修订没有标记,我只知道它的哈希值。
有没有办法从远程 git 存储库中完全删除该特定版本? 这是一个单独的项目,因此不会对任何人造成伤害。
【问题讨论】:
-
“远程”是什么意思?如果它是一个单独的项目,为什么会有一个“远程”回购?或者这是人们从中拉出来的?如果它是单独的,那么你不能删除(如文件系统删除,或重置回第一次提交并快进等)“远程”git repo,然后用修改后的版本替换它吗? :) 当然,这假设您知道如何从本地存储库中删除修订?
-
它曾经是一个单独的项目,因为我现在正在打开代码。我按照github.com/guides/import-from-subversion 上的教程导入了存储库,然后我意识到有一个包含机密数据的提交。我不知道如何从 github 和我的本地克隆中只删除该修订。我在github上打开了代码库,所以代码是我的(将在GPLv3许可下发布)
-
参见 GitHub 上的“删除敏感数据”:help.github.com/removing-sensitive-data
-
您链接的教程没有为我的问题提供解决方案。它只是从所有修订中删除文件。我不想删除文件,我只想删除修订版。无论如何,我能够通过谷歌搜索找到解决方案,找到另一个 SO 问题。