検索
Bitbucket で検索を開始するには、サイドバーの Bitbucket アイコンの下にある虫眼鏡アイコンをクリックしてから、1 つの単語またはフレーズ全体 (二重引用符で囲む) を入力します。
Bitbucket の任意の場所で検索を開始するキーボード ショートカットは "/
" です。検索語はファイル パス、ファイル名、およびファイル内のあらゆるコンテンツと照合されます。
Bitbucket の検索結果はコードを認識します。つまり、検索結果はランク付けされ、関数とタイプの定義が優先して表示されます。また、検索結果を絞り込みやすくするために演算子や修飾子を使用することもできます。
検索範囲
検索範囲は、検索場所によって変わります。
検索コンテキスト | 検索範囲 |
---|---|
アカウント | ユーザーやワークスペースが所有している、またはアクセス可能なすべてのリポジトリ |
リポジトリ | 個別のリポジトリおよびそれらのサブディレクトリ |
自身のアクセス権に関連付けられていない公開リポジトリで検索するには、そのリポジトリに移動し、そこで検索します。
ファイルまたはパスの検索
ファイル名またはパスの一部を検索するだけで、ファイルを検索できます。検索で path
を使用する場合、パス セグメントの完全一致のみがサポートされますが、修飾子を使用せずにファイル名の一部を使用して検索できます。以下の表の例を参照してくだい。
クエリ | 結果 |
---|---|
package.json | package.json という名前のファイルを見つける |
package lock json | package 、lock 、および json を含むファイルを見つける (package-lock.json など) |
package.json path:test | test を含むパスを持つ、package.json という名前のファイルを見つける |
MyClass | MyClass.java および MyClassTest.java のファイル名を見つける |
フレーズ クエリ
フレーズ クエリを使用すると、特定の組み合わせで表示される複数の単語を検索できます。
フレーズを検索する場合、単語を引用符で囲みます。たとえば、abstract
に class
(または単語の一部) が続く一連の単語を含むフレーズを検索する場合、クエリは次のようになります。
"abstract class"
このクエリは " abstract(class
" などのフレーズも検索します。
同じクエリでも二重引用符を使用しない場合は abstract
と class
の両方を任意の順序で含むファイルが返されます。
検索演算子
検索演算子を使用して検索結果を絞り込むことができます。
- 演算子はすべて大文字にする必要があります。
- 演算子を単独で使用することはできません。必ず検索語句と一緒に使用する必要があります。
- 検索クエリで AND を使用することはできません。複数の検索語は暗黙的に組み合わせられます。たとえば、
bitbucket jira
のクエリは、bitbucket
とcloud
の両方を含むファイルのみが一致することを示します。
次の検索演算子を利用できます。
演算子 | クエリ例 | 結果 |
---|---|---|
なし | bitbucket jira | bitbucket と jira という単語を任意の順序で含むファイルを返します。 |
NOT | bitbucket NOT jira | bitbucket を含み、jira を含まないファイルを返します。 |
- | bitbucket -jira | 単語の前に使用します。bitbucket を含み、jira を含まないファイルを返します。 |
有効 () および無効 () な検索構文の例:
有効性 | クエリ | 結果 |
---|---|---|
MyClass AND MyComponent NOT "YourClass" | AND は有効な構文ではありません。複数の検索語は暗黙的に組み合わせられます。 | |
NOT "YourClass" | 演算子を単独で使用することはできません。除外対象の前に一致すべき検索語を指定する必要があります。 | |
MyClass MyComponent NOT "YourClass" | MyClass および MyComponent という単語を含み、YourClass を含まないファイルを見つけます。 |
検索修飾子
修飾子を指定すると、検索結果を絞り込むことができます。
- 修飾子は
key:value
の形式で使用します。 - 複数の修飾子を組み合わせることができます。以降の「複数の修飾子を使用する」セクションを参照してください。
- 修飾子は
NOT
演算子を使用して否定できます – 上述の「検索演算子」セクションを参照してください。
次の検索修飾子を利用できます。
修飾子 | クエリ例 | 結果 |
---|---|---|
repo:<リポジトリの短縮名> <単語> | repo:myrepo myClass |
リポジトリ名ではワイルドカードはサポートされません。 リポジトリの既定のブランチのみが検索されます。 |
project:<プロジェクト キー> <単語> | project:MYPROJ jira | MYPROJ キーのプロジェクトで、jira という単語を含むファイルを照合します。 |
path:<directory|filename> <term> | path:src MyClass | パスが src と一致し、MyClass という単語を含むファイル |
ext:<ファイル拡張子> <単語> | ext:lhs jira |
|
lang:<言語> <単語> | lang:c jira |
|
パス修飾子
コード検索では、特定のパスのみを考慮するように制限することができます。検索では、ファイル パスはディレクトリとファイル名を含むセグメント (/
で区切られたパーツ) で分割されます。照合は 1 つ以上のセグメントで実行され、大文字と小文字を区別します。セグメント内での部分一致は行われません。
クエリ例 | 結果 |
---|---|
path:src MyClass | パスが src と一致し、MyClass
という単語を含むファイル |
path:/src MyClass | src から始まるパスを持ち、MyClass という単語を含むファイル |
path:src/main MyClass | パスが src/main と一致し、MyClass という単語を含むファイル |
path:src/*/module MyClass | src 、および module 以外の任意の文字列と一致するパスを持ち、MyClass という単語を含むファイル |
path:styles/*.css class | styles と一致するパスを持ち、拡張子が css で、class という単語を含むファイル。styles とファイル名の間には任意の数の他のセグメントが含まれる可能性があります。 |
MyClass NOT path:src | MyClass という単語を含み、src
と一致しないパスを持つファイル |
言語およびファイル拡張子の修飾子
コード検索では、特定の言語またはファイル拡張子のみを考慮するように制限することができます。一部の言語では、言語の条件をファイル拡張子の指定と同じように指定できます。たとえば、lang:java
は ext:java
に相当します。他の言語では、複数のファイル拡張子が 1 つの言語にマッピングされます。たとえば、.hs
、.lhs
および .hs-boot
ファイル拡張子は Haskell プログラミング言語で使用され、lang:haskell
を指定した場合に照合されます。
ここで使用する 'language' は、リポジトリの言語設定には関係しません。
複数の修飾子を使用する
修飾子はタイプに応じて暗黙的に組み合わせられるため、演算子と修飾子を一緒に使用する必要はありません。検索クエリで複数の検索修飾子を使用する場合は次の点に注意します。
- 同じ種類の検索修飾子は暗黙的に組み合わせられます。
- 異なる種類の検索修飾子は暗黙的に組み合わせられます。
- 検索修飾子は、検索式全体に適用されます。
たとえば、repo A
または repo B
にあり、"search-term
" というフレーズを含み、.js
または .jsx
拡張子を持つファイルを検索するクエリは次のようになります。
repo:A repo:B ext:js ext:jsx search-term
有効 () および無効 () な検索構文の例:
有効性 | クエリ | 結果 |
---|---|---|
ext:js project:myProject MyComponent
| js 拡張子を持ち、myProject プロジェクトに含まれ、
MyComponent
という単語を含むファイルを検索します。 | |
MyClass NOT repo:test |
| |
MyClass -ext:java |
| |
ext:js AND project:myProject MyComponent | AND は有効な構文ではありません。複数の検索語は暗黙的に組み合わせられます。 | |
ext:js NOT project:myProject MyComponent | js 拡張子を持ち、myProject 以外の任意のプロジェクトに含まれ、MyComponent という単語を含むファイルを検索します。 | |
ext:js ext:java MyComponent
| js または java の拡張子を持ち、MyComponent という単語を含むファイルを見つけます。 |
コード検索の考慮事項
検索の実行方法については、いくつかの考慮事項があります。
- 検索ではリポジトリのメイン ブランチが使用されます (通常、メイン ブランチは
master
になります)。 - 320 KB 未満のファイルはインデックスされます – 大きなファイルからの検索結果は表示されません。
- ワイルドカード検索 (例:
qu?ck buil*
) はサポートされません。 - 次の文字は検索語から削除されます。
!"#$%&'()*+,/;:<=>?@[\]^`{|}~-
- 正規表現はクエリではサポートされません。
- 大文字と小文字は区別されません (ただし、検索演算子はすべて大文字にする必要があります)。
- クエリには最大で 9 つの式 (例: 単語と演算子の組み合わせ) を設定できます。
- クエリの長さは、最大 250 文字です。
検索結果には、閲覧権限を持つコードのみが表示されます。