Bitbucket Cloud での検索

Bitbucket で検索を開始するには、上部ナビゲーション バーの右上隅にある検索フィールドを選択して、1 つの単語またはフレーズ全体 (二重引用符で囲む) を入力します。 

Bitbucket の任意の場所で検索を開始するキーボード ショートカットは "/" です。検索語はファイル パス、ファイル名、およびファイル内のあらゆるコンテンツと照合されます。 

Bitbucket の検索結果はコードを認識します。つまり、検索結果はランク付けされ、関数とタイプの定義が優先して表示されます。また、検索結果を絞り込みやすくするために演算子や修飾子を使用することもできます。

検索範囲

検索範囲は、検索場所によって変わります。

検索コンテキスト

検索範囲

アカウント

ユーザーやワークスペースが所有している、またはアクセス可能なすべてのリポジトリ

リポジトリ

個別のリポジトリおよびそれらのサブディレクトリ

 

自身のアクセス権に関連付けられていない公開リポジトリで検索するには、そのリポジトリに移動し、そこで検索します。

ファイル名またはパスの一部を検索するだけで、ファイルを検索できます。検索で path を使用する場合、パス セグメントの完全一致のみがサポートされますが、修飾子を使用せずにファイル名の一部を使用して検索できます。以下の表の例を参照してくだい。

クエリ

結果

package.json

package.json という名前のファイルを見つける

package lock json

packagelock、および json を含むファイルを見つける (package-lock.json など)

package.json path:test

test を含むパスを持つ、package.json という名前のファイルを見つける

MyClass

MyClass.java および MyClassTest.java のファイル名を見つける

フレーズ クエリ

フレーズ クエリを使用すると、特定の組み合わせで表示される複数の単語を検索できます。

フレーズを検索する場合、単語を引用符で囲みます。たとえば、abstractclass (または単語の一部) が続く一連の単語を含むフレーズを検索する場合、クエリは次のようになります。 

1 "abstract class"

このクエリは " abstract(class " などのフレーズも検索します。 

 同じ検索クエリでも二重引用符を使用しない場合は abstractclass の両方を任意の順序で含むファイルが返されます。

検索演算子

検索演算子を使用して検索結果を絞り込むことができます。

  • 演算子はすべて大文字にする必要があります。

  • 演算子を単独で使用することはできません。必ず検索語句と一緒に使用する必要があります。

  • 検索クエリで AND を使用することはできません。複数の検索語は暗黙的に組み合わせられます。たとえば、bitbucket jira のクエリは、bitbucket と cloud の両方を含むファイルのみが一致することを示します。 

次の検索演算子を利用できます。 

演算子

クエリ例

結果

なし

bitbucket jira

bitbucketjira という単語を任意の順序で含むファイルを返します。

NOT

bitbucket NOT jira

bitbucket を含み、jira を含まないファイルを返します。

-

bitbucket -jira

単語の前に使用します。bitbucket を含み、jira を含まないファイルを返します。

有効 () および無効 () な検索構文の例:

有効性

クエリ

結果

1 MyClass AND MyComponent NOT "YourClass"

AND は有効な構文ではありません。複数の検索語は暗黙的に組み合わせられます。

1 2 3 4 5 NOT "YourClass"

演算子を単独で使用することはできません。除外対象の前に一致すべき検索語を指定する必要があります。

1 MyClass MyComponent NOT "YourClass"

MyClass および MyComponent という単語を含み、YourClass を含まないファイルを見つけます。

検索修飾子

修飾子を指定すると、検索結果を絞り込むことができます。

  • 修飾子は key:value の形式で使用します。 

  • 複数の修飾子を組み合わせることができます。以降の「複数の修飾子を使用する」セクションを参照してください。

  • 修飾子は NOT 演算子を使用して否定できます。上述の「検索演算子」セクションを参照してください。

次の検索修飾子を利用できます。

修飾子

クエリ例

結果

1 repo:<repo slug> <term>
1 repo:myrepo MyClass

myrepo にある、MyClass という単語を含むファイルを照合します。

リポジトリ名ではワイルドカードはサポートされません。

リポジトリの既定のブランチのみが検索されます。

1 project:<project key> <term>
1 project:MYPROJ jira

MYPROJ キーのプロジェクトで、jira という単語を含むファイルを照合します。

1 path:<directory|filename> <term>
1 path:src MyClass

パスが src と一致し、MyClass という単語を含むファイル

1 ext:<file extension> <term> 
1 ext:lhs jira

jira という単語を含む、.lhs 拡張子の Haskell ファイルを照合します。

1 lang:<language> <term>
1 lang:c jira

.c or .h 拡張子で jira という単語を含む C 言語のファイルを照合します。

パス修飾子

コード検索では、特定のパスのみを考慮するように制限することができます。検索では、ファイル パスはディレクトリとファイル名を含むセグメント (/ で区切られたパーツ) で分割されます。照合は 1 つ以上のセグメントで実行され、大文字と小文字を区別します。セグメント内での部分一致は行われません。

クエリ例

結果

1 path:src MyClass

パスが src と一致し、MyClass という単語を含むファイル

1 path:/src MyClass

src から始まるパスを持ち、MyClass という単語を含むファイル

1 path:src/main MyClass

パスが src/main と一致し、MyClass という単語を含むファイル

1 path:src/*/module MyClass

src、および module 以外の任意の文字列と一致するパスを持ち、MyClass という単語を含むファイル

1 path:styles/*.css class

styles と一致するパスを持ち、拡張子が css で、class という単語を含むファイル。styles とファイル名の間には任意の数の他のセグメントが含まれる可能性があります。

1 MyClass NOT path:src

MyClass という単語を含み、src と一致しないパスを持つファイル

言語およびファイル拡張子の修飾子

コード検索では、特定の言語またはファイル拡張子のみを考慮するように制限することができます。一部の言語では、言語の条件をファイル拡張子の指定と同じように指定できます。たとえば、lang:java は ext:java に相当します。他の言語では、複数のファイル拡張子が 1 つの言語にマッピングされます。たとえば、.hs.lhs および .hs-boot ファイル拡張子は Haskell プログラミング言語で使用され、lang:haskell を指定した場合に照合されます。

ここで使用する 'language' は、リポジトリの言語設定には関係しません。

コード検索で認識されるすべての言語を表示するにはここをクリックします...

1 ada asp.net assembly c c++ c# clojure cobol cql css cython fortran go groovy haskell html java
1 javascript json kotlin latex less lisp markdown mathematica matlab objective-c ocaml pascal perl php plain plsql properties python r ruby rust sas scala scss shell sieve soy sql swift velocity xml yaml

複数の修飾子を使用する

修飾子はタイプに応じて暗黙的に組み合わせられるため、演算子と修飾子を一緒に使用する必要はありません。検索クエリで複数の検索修飾子を使用する場合は次の点に注意します。

  • 同じ種類の検索修飾子は暗黙的に組み合わせられます。

  • 異なる種類の検索修飾子は暗黙的に組み合わせられます。 

  • 検索修飾子は、検索式全体に適用されます。

たとえば、repo A または repo B にあり、"search-term" というフレーズを含み、.js または .jsx 拡張子を持つファイルを検索するクエリは次のようになります。

1 repo:A repo:B ext:js ext:jsx search-term

有効 () および無効 () な検索構文の例:

有効性

クエリ

結果

ext:js project:myProject MyComponent

js 拡張子を持ち、myProject プロジェクトに含まれ、 MyComponent という単語を含むファイルを検索します。

1 MyClass NOT repo:test

MyClass という単語を含むすべてのファイル (test リポジトリを除く) を検索します

1 MyClass -ext:java

MyClass という単語を含むすべてのファイル (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 という単語を含むファイルを見つけます。

コード検索の考慮事項

検索の実行方法については、いくつかの考慮事項があります。

  • 検索はリポジトリで main ブランチを使用します。

  • 320 KB 未満のファイルがインデックスされます – 大きなファイルからの検索結果は表示されません。

  • ワイルドカード検索 (例: qu?ck buil*) はサポートされません。

  • 次の文字は検索語から削除されます。 !"#$%&'()*+,/;:<=>?@[\]^`{|}~-  

  • 正規表現はクエリではサポートされません。

  • 大文字と小文字は区別されません (ただし、検索演算子はすべて大文字にする必要があります)。

  • クエリには最大で 9 つの式 (単語と演算子の組み合わせ) を設定できます。

  • クエリの長さは、最大 250 文字です。

  • 検索結果には、閲覧権限を持つコードのみが表示されます。

その他のヘルプ