〜/ bin /にあるGitからすべてのファイルを削除します。
走る
git rm -r --cached ~/.vim/* # Thanks to Pate in finding --cached!
私は得る
fatal: pathspec '.vim/colors' did not match any files
〜/ .vim/**が機能しないため、このエラーメッセージは次のパスを使用することを提案します
~/.vim/* # I get the error
~/.vim/*/*/* # This removes files from the index at ~/.vim/folderA/folderB/file1.txt
~/.vim/*/* # similar error as to the first PATH
〜/ .vimにあるすべてのファイルとサブディレクトリをGitから削除するにはどうすればよいですか?
-
git rm -r --cached ~/.vim/*
fatal: pathspec '.vim/colors' did not match any files
1 /「*
」は必要ありません。
git rm -r --cached ~/.vim
追跡されたサブファイルを処理します。
2/fatal: pathspec '.vim/colors' did not match any files
は、1 /にリストされているコマンドが機能する前に試行したコマンドの1つを意味し、削除するファイルはもうありません!
# to test that command, first reinitialize the state of the repository
# save first if you have any other current modifications
$ git reset --hard
# then check the rm works
$ git rm -r --cached ~/.vim
rm '.vim/aPath/aFile1'
rm '.vim/aSecondPath/aFile2'
rm '.vim/aThirdPath/aFile3'
# try it again
$ git rm -r --cached ~/.vim
fatal: pathspec '.vim/colors
ローカルに変更があっても削除しますか?
git rm -rf bin/*
または、インデックスから削除し、ファイル自体は保持しますか?
git rm -r --cached bin/*
また試してください:
git help rm
または、再帰的に削除しようとしているディレクトリが.gitignoreリストにある可能性があります。私はこれに遭遇しました。無視リストに./vendorsがあり、。/ vendorsの下に多数のディレクトリがありますが、vendorsのすべてが無視されているため、実際には./vendors/asseticのようなものは削除されていません。無視リストにあったことを忘れてしまいました:)
*
が最初に行うことを理解する必要があります。
アプリケーションは*
(または他のグロビング文字)を認識しません-グロブのすべての一致を個別の引数として受け取ります。
これをよりよく理解するには、最初のコマンドの前にecho
を付けて、何が出力されるかを確認します。
git rm -r --cached ~/.vim/*
プログラムが操作方法を知らないもの(.vim/colors
を含む)を含め、個々の一致がそれぞれ表示されます。