使用Git / GitHub删除文件

时间:2009-12-31 00:39:16

标签: git github

首先,我是Git的新手。

我使用Finder在Mac上本地删除了一堆文件。我希望我删除的文件不再显示在当前分支中,但它们确实如此。

任何Git用户都知道更新索引的命令吗?

4 个答案:

答案 0 :(得分:226)

我认为这是一种更简单的方法来做你想做的事情:

git add . -A 

然后你会这样做:

git commit -m "removed some files"

如上所述。

答案 1 :(得分:19)

您可以看到已删除的文件,这些文件仍在“跟踪”中:

git ls-files --deleted

要从分支中删除文件,您可以执行以下操作:

git ls-files --deleted -z | xargs -0 git rm

来自man git-rm

  

从索引或工作树和索引中删除文件。 git-rm不会仅从您的工作目录中删除文件。 (没有删除文件的选项        13只来自工作树,但仍保留在索引中;如果你想这样做,请使用/ bin / rm。)

最后,要提交“删除”,请执行以下操作:

git commit -m "removed some files"

答案 2 :(得分:17)

我不知道自从之前的答案以来是否已将其添加到git中,但我只是使用了

git add -u
git commit -m "Removed some files"

实现同样的目标。

答案 3 :(得分:2)

git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch deletefile.name' --prune-empty --tag-name-filter cat -- --all
git commit -m "Removed deletefile.name"
git push origin master --force

将deletefile.name替换为要删除的文件。有关详细解释,请阅读好文章https://help.github.com/articles/remove-sensitive-data