2013-04-10 7 views
97

実際に存在するファイルを削除することができませんでしたすべてのファイルと一致しませんでした... PATHSPECを単純に削除されないgitコントロール。失敗したコマンドは次のとおりです。私はなど、ディレクトリの内容、枝を、リストの下実際に存在するファイル削除することができませんでし - 致命的: - :PATHSPEC ...私は、ファイルの下を持っているすべてのファイル <p></p>と一致しませんでした致命的な

$ git rm .idea/workspace.xml 
fatal: pathspec '.idea/workspace.xml' did not match any files 

は、これまでのところ私は、ディレクトリ内からRMを試みたが、変な文字がある場合だけで脱出し、私は本当によました困った。私はウェブとSOを検索しましたが、これは特に見つかりませんでした。前もって感謝します!

$ git branch -a 
* dot-output 
    master 
    remotes/origin/HEAD -> origin/master 
    remotes/origin/master 
    remotes/origin/modelspace 
$ 

$ git status 
# On branch dot-output 
# Untracked files: 
# ... 

$ ls .idea/ 
ant.xml   encodings.xml  modules.xml  workspace.xml 
compiler.xml  inspectionProfiles scopes 
copyright  libraries  testrunner.xml 
dictionaries  misc.xml  vcs.xml 

$ ls -al 
total 56 
drwxr-xr-x 16 matt staff 544 Apr 10 11:33 . 
[email protected] 33 matt staff 1122 Apr 10 09:40 .. 
[email protected] 1 matt staff 12292 Apr 10 11:19 .DS_Store 
drwxr-xr-x 18 matt staff 612 Apr 10 11:39 .git 
-rw-r--r-- 1 matt staff  98 Mar 6 13:40 .gitignore 
drwxr-xr-x 16 matt staff 544 Apr 10 11:34 .idea 
-rw-r--r-- 1 matt staff 1113 Feb 25 11:07 README 
... 

$ head -n 2 .idea/workspace.xml 
<?xml version="1.0" encoding="UTF-8"?> 
<project version="4"> 

$ git rm .idea/workspace.xml 
fatal: pathspec '.idea/workspace.xml' did not match any files 

UPDATE:Nevikとボリスからの回答は、多くのことを助けました。私は、IntelliJ IDEA(私が大好きなツール、BTW)によって悪化したいくつかのことが混乱していることに気付きました。まず、git rmの 'fatal:pathspec'というメッセージは、このバニラユーザーの意見では役に立たず、誤解を招きます。次に、私は.gitignoreにファイルを持っていましたが、私の質問をする前にファイルを削除しました。しかし、IDEAのIgnored Files機能にはgitとは独立に含まれていたため、gitステータスが示すように、プロジェクトビューアでは表示されませんでした(untrackedではなく)。最後に、私が実験している間に私はIDEAを実行していました、そして、それは私のRMの直後にファイルを再作成していたようです。ですから、私の持ち帰りは、Gitの動作が混乱している場合、デバッグ中にIDEAを終了し、コマンドライン(とgitk)でsoleyを実行してください。そして、そのSOユーザーはすごいです。再度、感謝します!

+8

あなたは 'git rm'ではなく' rm'でファイルを単に削除しようとしましたか? –

+0

@NevikRehnelはい、私はそれを試みると思っていた、ありがとう、しかし、それはIntelliJ IDEA(私が走っていた)のように、削除ごとに蘇生しました。ドー! –

+0

私はEclipseとAttlassian SourceTreeで作業しています...ご質問は私がこの問題を解決するのに役立ちます。ありがとう! – Manu

答えて

91

ファイル.idea/workspace.xmlはgitバージョン管理下にありません。

これを確認するには、無視されているすべてのファイルを一覧表示するgitコマンドを使用します。次のgitコマンドを使用して確認できます。git status/Untracked filesを確認します。

git ls-files --others -i --exclude-standard 
+0

それは多くの助けになりました、ボリス。ありがとうございました!私は自分の質問を更新しました(IDEAなど) –

-5

ファイルidea/workspace.xmlは.gitignore(またはその親フォルダ)に追加された場合の移動は一時的にそれはgitのバージョン管理に手動でちょうどadd

1

を.gitignore.bckする.gitignore。また、TortoiseGitを使って追加することもできます。次のプッシュの後で、あなたの問題が解決されたことがわかります。

Add to git versioning using TortoiseGit

+0

誰かがディレクトリやファイルを 'rm'する必要があるとき、gitにそれを追加する必要はありませんgitのバージョン管理! – M98

9
$>git add . 
$>git rm file_Name 

それは動作します。右クリック→新しいファイルの作成を使用して新しいファイルを追加し、その後すぐに削除します。ファイルは、追跡されていないファイルリストに移動します。

+0

ファイルを削除しているときにエラーが発生した場合、ファイルを削除している間に-fを使うことができます: $> git rm -f file_Name –

+0

ディレクトリやファイルをrmする必要があるときは、それがgitのバージョン管理下にまだリストされていなければ、それをgitに追加する必要はありません。 – M98

関連する問題