Cursorでは、.cursorignoreと.cursorindexingignoreは似ていますが、同じ目的を果たすわけではありません。 多くの大規模なリポジトリは最初からこの二つを混同しており、その結果、AIが元々見るべきコードをインデックス化したり、混雑したり、ブロックしたりしてしまいます。
最も単純な違いは、.cursorindexingignoreはインデックスにのみ影響し、ほとんどのAIの読み込み能力には影響しないのに対し、.cursorignoreはより積極的で、これらのファイルがインデックスに入力されず、Tab、Agent、Inline Edit、@参照などのアクセスパスにも影響を及ぼすという点です。 つまり、1つはパフォーマンスと検索、もう1つはアクセス制御です。
もしモノリポジトリが大きすぎたり、コンパイル製品が多すぎたり、ドキュメントがごちゃごちゃしているので、コードベースの検索をよりクリーンで高速にしたいなら、まず.cursorindexingignoreを使いましょう。 これらの文書はインデックスに値しない場合もあるので、必要なときにAIが閲覧することを完全に禁止する必要はないでしょう。
逆に、認証情報、プライベート設定、余計なサブプロジェクトなど特定のディレクトリをAIルーチンのワークフローに明示的に組み込ませたくない場合は、.cursorignoreの方が適しています。 「このコンテンツをメインのAIアクセス画面に入れないように」と書かれており、「埋め込み禁止」というだけではありません。
なぜ多くの人がバックを使うのでしょうか? なぜなら、「無視」を見ると、それが意味として自動的に理解されるからです。 その結果、パフォーマンス問題はセキュリティ問題として扱われ、またはセキュリティ問題がインデックス問題として扱われます。 典型的な結果は以下の通りです:
1. .cursorignoreを使ってインデックスしたくない大きなディレクトリをブロックし、AIの応答時の可視範囲が狭くなる。
2. .cursorindexingignoreだけを書き込む。機密ファイルがブロックされたと思い込んで、実際のAIは他の経路で遭遇する可能性がある。
実際には、非常に有用な区分としては、spawn、cache、huge logs、サードパーティベンダーパッケージがあり、優先順位は.cursorindexingignoreに置かれます。 もし通常のAIの文脈でコンテンツを入力したくなければ、.cursorignoreを追加してください。 書き終わったら、Cursorのインデックス&ドキュメントで含まれるファイルを確認するか、gitのチェック-無視でルールを確認してください。推測に頼らないでください。
つまり、この2つの文書は誰が誰に代わるかではなく、それぞれ独自の層を持っています。 リポジトリが複雑であればあるほど、「インデックス作成の迅速化」と「露出パイプへのアクセス削減」を最初から分けるべきです。 はっきりとは言えず、調整すればするほど混沌としています。