在Git中,删除意外提交的DLL和PDB文件

Mik*_*Coy 12 .net git

我有一个git repo,我需要在没有冲突的情况下工作.它是.net/c#mvc repo.问题是dll和pdb文件.这些文件意外地被提交到了repo,所以当我做我的初始时git pull,我得到了另一个开发人员提交的所有这些文件.

我设置了.gitignore这样的:

bin/
obj/
App_data/
Run Code Online (Sandbox Code Playgroud)

从其他帖子我相信这是我应该做的全部,但是,如果我构建我的项目并运行git status它会显示许多将要提交的dll和pdb文件.

这是因为当克隆它时,那些文件存在于repo中吗?如果是这样,删除这些文件的最佳方法是什么?

Von*_*onC 12

git rm在看到你的.gitignore直接应用程序应用于你的git repo 之前,你需要先删除那些文件().

如果要将这些文件保留在工作树中,则只能从索引中删除这些文件.

git rm -r --cached a.dll
Run Code Online (Sandbox Code Playgroud)

(参见" .gitignore文件不忽略 ")

但对于生成的文件,它们是否被删除无关紧要:您将在下一次编译时重新创建它们,但忽略它们,因为它们不再是索引的一部分.