删除 git 仓库文件夹历史记录

date
May 26, 2023
slug
remove-git-files
status
Published
tags
Git
summary
type
Post
如果您想要删除您的 Git 仓库中之前提交的某个文件夹,并且要将这个删除操作应用到 Git 仓库的历史记录中,可以按照以下步骤进行操作:
  1. 首先使用 git filter-branch 命令来重写 Git 仓库的历史记录,将需要删除的文件夹从历史记录中彻底删除:
    1. 其中 `<folder_path>` 是要删除的文件夹的路径。
  1. 运行上述命令后,Git 仓库中的历史记录将被重写,其中包含了对文件夹中所有文件的删除操作。但是,这个删除操作还没有提交到 Git 仓库中。要提交这个删除操作,需要使用 git push 命令将更新后的历史记录推送到远程 Git 仓库中:
    1. 其中 `<branch_name>` 是需要推送的分支名称。注意,由于这个删除操作是对 Git 仓库历史记录的重写,因此需要使用 `--force` 参数来强制推送更新后的历史记录,这可能会导致其他人在使用相同的 Git 仓库时出现问题,因此最好在执行这个操作之前与其他人进行沟通。
  1. 删除本地仓库中的文件夹,可以使用 git rm 命令:
    1. 最后,将删除操作提交到 Git 仓库中:
      1. 这样,您就可以将删除操作应用到 Git 仓库的历史记录中,并且删除了本地仓库中的文件夹。请注意,如果其他人在执行 `git pull` 命令时遇到了问题,他们可能需要手动解决这些冲突。因此,在进行此操作之前,请确保与所有相关人员进行沟通,并确保他们知道如何正确地更新他们的本地仓库。

    Copyright © 2022 - 2025 Levi