2

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

如果我再次克隆这个目录,我仍然会检查这个文件

我尝试从上面的目录中执行“TortoiseGit”/“push”。选项在推送中是默认的。TortoiseGit 创建用户名和密码对话框。然而,这并没有改变任何东西——仍然没有从存储库中删除文件

4

2 回答 2

7

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

于 2013-09-28T17:06:54.650 回答
1

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

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

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

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

# ~~ 编译/测试

git push origin --force --all


于 2013-09-28T16:57:33.550 回答