44

git(Windows)で追跡したくないobjectsファイルで呼び出された深いサブフォルダーがあります。*.object

.gitignore では、さまざまな組み合わせ (**/objects/*または**/objects/*など) を試してみましたが、役に立ちませんでした。毎回、次のようgit statusに表示されます。

# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       foo/src/objects/a.object
#       foo/src/objects/b.object

*.objectファイルが追跡されていないファイルのリストから消えるのは、.gitignoreに追加したときだけです。ワイルド カードの何が問題になっていますか?

また、いつgit update-index必要で、いつすればよいgit rm --cached myfileですか?

rm のようなワイルドカード機能はありgit rm --cached **/foo/*.zipますか?

更新: 同様に、(常に望ましいとは限りませんが)に行.gitignoreを追加しても効果はありません。.gitignoreファイルが過去に追跡された可能性があるため、これは奇妙ですか?

4

1 に答える 1

89

OK、ワイルドカードは機能しませんが(Windowsでは明らかに)、次の方法でフォルダー全体を削除できるようです:

git rm -r --cached "path/to/foo/"

--cached はアンステージのみであることを理解しています -git commitそれらをレポから削除する必要があります。

于 2013-02-22T16:10:55.860 に答える