Gitでフォルダーを削除しようとしたときに「pathspec」がないのはなぜですか?


9

私はGitリポジトリからフォルダを削除しようとしています

git rm folderToRemove

しかし、私がそうしようとすると、Gitはこのエラーを出します。

fatal: pathspec 'siteFiles/applicationFiles/templates/folderToRemove' 
did not match any files

現在のディレクトリは「テンプレート」です。cd「folderToRemove」フォルダーに移動できるので、このエラーが奇妙なことに気づき、明らかに存在しています。このエラーはどういう意味ですか?

回答:


17

Gitはディレクトリをバージョン管理せず、「コンテンツ」(ディレクトリコンテンツまたはファイル)のみをバージョン管理します。

どのファイルとも一致しませんでした

これはfolderToRemove、「Gitからファイルを再帰的に削除できない」で説明したように、内に削除するファイルがないことを意味します。
これで、ディレクトリ自体(Windows delまたはUnix rm)を削除できます。

Gitでの空のディレクトリの削除」で説明されているように、次のコマンドを実行することもできます。

git clean -fd

しかしながら:

警告:cleanコマンドは、gitで追跡されていない現在の作業コピー内のファイルを削除します。これは、gitに新しいファイルを追加していない場合に作業を失うための良い方法です。常にgit add前に実行しgit cleanます。

むしろ最初に実行:

git clean -d -x -n

gitでローカル作業ディレクトリをクリアするにはどうすればよいですか?」で説明されています


しかし、他の人のリモコンを引っ張ったときに、どのように「掃除」するのでしょうか。
Cristian

@IleaCristianはGitの分散された性質により、リモートのクリーニングは行わず、自分のクローンのみをクリーニングします。
VonC、2014

問題は、最終ビルドを作成しないことです。プロジェクトファイル(IDEで表示される)は、実際には「拡張子」(myproj.xcworkspaceまたはmyproj.xcodeproj)を持ついくつかのフォルダーです。xcworkspaceを削除してxcodeprojのみを残したかったのです。基本的に、ビルドを作成する人にxcodeprojファイルのみを使用するように強制したかったのです。
Ilea Cristian 2014
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.