2011-09-30 6 views
6

ディレクトリを無視する方法について多くの質問がありますが、私は通常これまで何の問題もなかったことを知っていますが、今は理解できないことがあります。 com.example.MyProject/が自動的にある下gitはディレクトリ内のすべてのファイルを無視するのはなぜですか?

*.log 
war/WEB-INF/classes/ 
war/WEB-INF/deploy/ 
com.example.MyProject/ 

ファイル:私はここのディレクトリclasses/deploy/com.example.MyProject/の内容を無視したい、と私の.gitignoreファイル

/src 
/war 
    com.example.MyProject/ 
    WEB-INF/ 
    classes/ 
    deploy/ 
    lib/ 

されています。ここでは

は私のディレクトリ構造でありますgitは com.example.MyProject.nocache.jsという名前のファイルを除いてすべてを無視します。私は git statusを行う際に実際に、私は得る:

# On branch myBranch 
# Changed but not updated: 
# (use "git add <file>..." to update what will be committed) 
# 
#  modified: .gitignore 
#  ...... 
#  modified: war/com.example.MyProject/com.example.MyProject.nocache.js 

なぜGitはそのディレクトリ内のその1つのファイルを無視することを拒否しますか?私は間違って何をしていますか?

答えて

5

ファイルがすでにGitによって追跡されている場合は、ファイルを.gitignoreに追加することでGitの追跡を停止することはありません。 git rm --cached <file>を実行して、ファイルをツリーに保持してから無視する必要があります。

+0

ダムインデックスから削除される:

はgitのインデックスからファイルを削除してください!以前のコミットを誤って追加してしまった:私はただそれを削除しなければならなかった。ありがとう! – MarcoS

+0

そして、ユーザーのプロジェクト>チーム> untrackの場合、これはそのフォルダ内のすべてのファイルを削除して(それらを追跡していません)、補足説明のために変更 –

5

ファイルが既にインデックスに追加されている場合は、ファイルをファイルに追加してもそこに残ります。

git rm --cached war/com.example.MyProject/com.example.MyProject.nocache.js 

--cachedオプションは、ファイルがフォルダ内にとどまることを確認しますと、私だけ

+1

+1をコミットします: "--cachedオプションはファイルがあなたのフォルダから削除され、インデックスから削除されます。 " –

関連する問題