【问题标题】:remove sensitive data but not file from git history [duplicate]从 git 历史记录中删除敏感数据但不删除文件 [重复]
【发布时间】:2013-03-10 09:28:38
【问题描述】:

我有一个曾经包含敏感配置信息的文件。我将该配置信息移到另一个不受版本控制的文件中。我想将另一个文件保留在版本控制之下,但我想删除它的历史记录,因为人们可以轻松地浏览 github 上的源代码并在以前的提交中找到敏感信息。最好的方法是什么?我只看到如何从版本控制中删除文件本身并清除其历史记录。

对 git 有点陌生,所以请原谅新手。

【问题讨论】:

标签: git version-control github


【解决方案1】:

你可能想看看这篇文章https://help.github.com/articles/remove-sensitive-data

差不多就是这个命令了

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch Rakefile' \
  --prune-empty --tag-name-filter cat -- --all

将从 git 中删除 Rakefile 的历史记录。但是,他们继续将该文件添加到他们的 gitignore 中。您可能应该跳过该部分,因为您希望将文件保留在版本控制中。

【讨论】:

  • 解释一下它的实际作用会很好。
  • 链接的文章解释了如何删除文件。 OP 的问题标题说不要删除文件。
  • @TylerCollier 如果您阅读了我的回答,它会声明不要将文件添加到gitignore,因为这会使它脱离版本控制。这将从历史记录中删除文件,从而允许删除敏感数据。
  • OP 已经知道如何做到这一点:I'm only seeing how to remove the file itself from version control and clear its history. 我认为他只想从历史记录中删除敏感信息,而不是历史记录本身。
  • 天哪。无论发生了什么简单的右键单击删除历史记录。异常复杂。无法让它工作。不断收到消息说它保持不变。
猜你喜欢
  • 1970-01-01
  • 2016-04-22
  • 2020-05-08
  • 1970-01-01
  • 1970-01-01
  • 2014-06-19
  • 2020-03-20
  • 1970-01-01
相关资源
最近更新 更多