我有一个Git repo,我用rm(不是Git rm)删除了四个文件,我的Git状态是这样的:

#    deleted:    file1.txt
#    deleted:    file2.txt
#    deleted:    file3.txt
#    deleted:    file4.txt

我如何从Git中删除这些文件,而不需要手动查看并添加每个文件,就像这样:

git rm file1 file2 file3 file4

理想情况下,我正在寻找与git添加的方式相同的东西。是的,如果可能的话。


当前回答

这个简单的解决方案对我来说很有效:

git rm $(git ls-files --deleted)

其他回答

对于visual studio项目

'git ls-files --deleted | sed 's/(.*)/"\1"/'| xargs git rm' 

当删除的文件路径有空间时,哪个是有用的

你可以使用

git add -u

要将删除的文件添加到暂存区域,然后提交它们

git commit -m "Deleted files manually"
git commit -m 'commit msg' $(git ls-files --deleted)

在我已经删除了文件之后,这个方法对我有用。

迄今为止我发现的最灵活的解决办法是

git cola

然后选择我想要执行的所有已删除文件。

(注意,我通常在git中执行命令行,但git处理删除的文件有点尴尬)。

从Repo中删除所有以.log结尾的文件,但不删除本地存储

Git ls-files | grep "\.log$"