从git中永久物理删除私密文件(改写git历史)

简介:

第一步:切换到git本地库的最上一级

第二步:递归重写git历史

# git filter-branch --tree-filter 'rm -f admin/test.sh ' --tag-name-filter cat -- --

Rewrite a24d4b153f783cca0554feed3188426ae79ea27d (410/410)

Ref 'refs/heads/develop' was rewritten

Ref 'refs/heads/master' was rewritten

Ref 'refs/remotes/origin/develop' was rewritten

Ref 'refs/remotes/origin/master' was rewritten

第三步:强制push到服务器

# git push origin --tags --force

Warning: Permanently added 'a.b.c.d' (ECDSA) to the list of known hosts.

Everything up-to-date

[root@product-bastion init]# git push origin --all --force

Warning: Permanently added 'a.b.c.d' (ECDSA) to the list of known hosts.

Counting objects: 9, done.

Delta compression using up to 2 threads.

Compressing objects: 100% (7/7), done.

Writing objects: 100% (7/7), 1.73 MiB | 0 bytes/s, done.

Total 7 (delta 2), reused 0 (delta 0)

To git:init

 + a24d4b1...ae92382 develop -> develop (forced update)

 + a24d4b1...ae92382 master -> master (forced update)

第四步:检查确认私密文件已经被清理出git库。


     本文转自xiaoyuwang 51CTO博客,原文链接:http://blog.51cto.com/wangxiaoyu/1785756,如需转载请自行联系原作者

相关文章
|
2月前
|
存储 前端开发 开发工具
Git Hooks实战:提交前检查修改文件中是否包含调试代码
Git Hooks实战:提交前检查修改文件中是否包含调试代码
64 0
|
2月前
|
存储 开发工具 git
Pycharm git-创建本地仓库\创建分支\合并分支\回溯版本\加入git后文件颜色代表的含义
Pycharm git-创建本地仓库\创建分支\合并分支\回溯版本\加入git后文件颜色代表的含义
126 0
|
2月前
|
缓存 Shell 开发工具
git 基本 使用和.gitignore文件不生效
git 基本 使用和.gitignore文件不生效
46 0
|
2月前
|
开发工具 git
如何使git提交的时候忽略一些特殊文件?
如何使git提交的时候忽略一些特殊文件?
|
6天前
|
开发工具 git
git 恢复单个文件到指定版本
git 恢复单个文件到指定版本
9 0
|
11天前
|
开发工具 git
如何配置git的.bashrc文件
如何配置git的.bashrc文件
|
14天前
|
Java 开发工具 git
java开发配置全局git忽略文件(IDEA)
java开发配置全局git忽略文件(IDEA)
12 0
|
2月前
|
开发工具 git
【git】如何删除git远程仓库上的文件
【git】如何删除git远程仓库上的文件
28 1
|
2月前
|
SQL PHP 开发工具
【攻防世界】mfw(.git文件泄露)
【攻防世界】mfw(.git文件泄露)
|
2月前
|
开发工具 git