ablog

不器用で落着きのない技術者のメモ

git rm で fatal: pathspec did not match any files と怒られる

事象

git rm でファイルを削除しようとすると、"fatal: pathspec 'ファイルパス' did not match any files" と怒られる。

% git rm ./.DS_Store    
fatal: pathspec './.DS_Store' did not match any files

原因

  • Gitに登録していないファイルのため。普通にファイルを削除すればよい。
% rm .DS_Store
  • そもそも、.DS_Store など git に登録したくないファイルはリポジトリの root ディレクトリに .gitignore を置いて無視するファイルを記述すればよい。
% cat .gitignore 
# Mac
.DS_Store
.AppleDouble
.LSOverride

参考

これはGitに登録していないファイルがあると出るらしいです。
どうやら --ignore-unmatch をつけると、Gitに登録していないファイルを無視して削除してくれるみたいです。

git rm で fatal: pathspec did not match any filesが出るときの解決方法 - Qiita