如何从Git存储库中删除包含文件的单个目录?


当前回答

您可以使用Attlasian源树(Windows)(https://www.atlassian.com/software/sourcetree/overview). 只需从树中选择文件并按下顶部的“删除”按钮。文件将从本地存储库和本地git数据库中删除。然后提交,然后推送。

其他回答

这两个答案的组合对我有用

git rm -r one-of-the-directories
git commit . -m "Remove duplicated directory"
git push

如果仍然显示一些警告,请手动删除文件

git filter-branch --tree-filter 'rm -rf path/to/your/file' HEAD
git push

从Git和本地删除目录

使用两个目录签出“master”:

git rm -r one-of-the-directories // This deletes from filesystem
git commit . -m "Remove duplicated directory"
git push origin <your-git-branch> (typically 'master', but not always)

从Git中删除目录,但不是本地目录

要从Git中删除此目录,但不将其从文件系统(本地)中完全删除,请执行以下操作:

git rm -r --cached myFolder

如果由于某种原因,karmakaze所说的不起作用,您可以尝试使用或使用文件系统浏览器(例如,在Windows文件资源管理器中)删除您想要的目录。删除目录后,发出命令:git add-A然后gitcommit-m'删除目录'然后git推送原始主机。

在删除任何内容之前,第一个git命令需要知道您是谁

初始化git-config user.name“某人”git-config user.email“someone@someplace.com"git rm-rgitcommit-m“删除目录”git推送原始主机

您可以在本地删除文件夹,然后按如下方式推送:

git rm -r folder_name
git commit -m "your commit"
git push origin master