ZBLOG

git 只要保留文件最后一次提交内容

如果你想要保留 Git 仓库中某个文件的最后一次提交内容,并删除该文件的所有历史提交记录,可以按照以下步骤进行:

  1. 创建一个新分支

由于删除历史提交记录会影响到仓库的完整性,因此建议先创建一个新分支来进行操作。

git checkout -b new_branch
  1. 使用 git filter-branch 命令删除指定文件或文件夹的历史提交记录并保留最后一次提交

假设你要保留仓库中的 file_to_keep.txt 文件的最后一次提交内容,并从所有提交中删除该文件,则可以使用以下命令:

git filter-branch --subdirectory-filter path/to/file_to_keep.txt HEAD

这条命令会重写 Git 仓库的历史记录,并只保留 file_to_keep.txt 文件在最后一次提交时所包含的内容。同时会将该文件移动到根目录下。

  1. 强制推送更改

由于我们已经修改了 Git 仓库的历史记录,因此需要强制推送更改到远程仓库。

git push --force origin new_branch

注意:强制推送可能会覆盖其他人在远程仓库上的更改,请谨慎操作。如果有其他人正在使用该分支,则建议与他们协商后再进行操作。

  1. 删除旧分支

如果确认新分支没有问题,可以将旧分支删除。

git branch -D old_branch

以上就是在 Git 中保留文件最后一次提交内容并删除该文件的所有历史提交记录的基本步骤。需要注意的是,删除历史提交记录会影响到仓库的完整性,并且可能会导致其他问题,请谨慎操作。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=5092

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?