如何使用Windows Tortoise从Git存储库中删除文件?

时间:2013-09-28 16:51:30

标签: git tortoisegit

我在网上看到了很多答案,但这对我不起作用。所以,我右键单击该文件并选择“TortoiseGit”/“delete(keep local)”。文件图标变为红色,上面的所有目录也都是。

如果我再次克隆此目录,我仍然会查看此文件

我尝试从上面的目录中执行“TortoiseGit”/“push”。选项默认为推送。 TortoiseGit为用户名和密码创建对话框。但是,这不会改变任何内容 - 仍然不会从存储库中删除静态文件

2 个答案:

答案 0 :(得分:7)

从Tortoise git删除文件后执行提交,然后将其推送到存储库,这会将删除添加到远程存储库,然后任何后续提取都将有此提交,您将不再获取该文件

答案 1 :(得分:1)

如果您想从所有版本/提交中删除* .bad文件,则适用

基本上你需要强制推送,并且你有权限进行强制推送。确保在执行操作之前备份原始裸存储库

假设您要删除* .bad文件。

git filter-branch --index-filter "git rm --cached -f \
      --ignore-unmatch '*.bad'" --tag-name-filter cat -- --all

# ~~ compile / Test 

git push origin --force --all