撤消将更改推送到文件

时间:2016-11-10 18:20:47

标签: git git-reset git-revert

我最近在远程存储库中推送了一个项目更改提交。 我只是想出了其中一个我通常不会提交更改的文件,因为它可能包含敏感信息。

我想撤消对该文件的已提交更改(到上一个上一个状态),而不会丢失其他文件中提交的更改。

由此:

  • 更改FileSensitive - ++
  • 更改文件1
  • 更改文件2
  • 新文件3
  • 新文件4

对此:

  • 更改文件1
  • 更改文件2
  • 新文件3
  • 新文件4

目前,只有我可以访问该存储库,因此重写历史记录没有问题,所以当我访问该远程存储库时,他们不会在历史记录中看到敏感信息。那么,我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

  1. git --soft reset HEAD^撤消上次提交,保留索引中最后一次提交所做的所有更改。
  2. git checkout HEAD <path to FileSensitive>取消并放弃FileSensitive上的更改。 (注意,此命令会丢失对FileSensitive的更改。)
  3. git commitgit push -f更新远程仓库。