gitfilesystems

Delete files from git index when they are already deleted from fs


I have a bunch of files deleted from the fs and listed as deleted in git status.

How can I stage this changes faster then running git rm for each file?


Solution

  • You can do this with:

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

    Whenever this question is asked, people suggest git add -u, but the problem with that answer is that it also stages other modifications in your working copy, not just deletions. That might be OK in many situations, but if you want to just stage the deletion of files that have been deleted from the working copy, the suggestion I've made is more precise.

    There's actually a section of the git rm documentation that discusses how to do what you want - I believe that the command suggested in the "Other ways" section is equivalent to what I've suggested here.