コードベースの検索

製品の概要

Bazel の コード検索およびソース閲覧インターフェース は、Bazel ソースコード リポジトリを参照するためのウェブベースのツールです。これらの機能を使用すると、さまざまなリポジトリ、ブランチ、ファイル間を移動できます。閲覧履歴、差分、Blame 情報も表示できます。

スタートガイド

の最新バージョンを使用すると、より快適にご利用いただけます。

コード検索およびソース閲覧インターフェースにアクセスするには、ウェブブラウザで https://source.bazel.buildを開きます。

メイン画面が表示されます。この画面には次のコンポーネントが含まれています。

  1. [パンくずリスト] ツールバー。このツールバーにはリポジトリ内の現在の場所が表示され、すばやく別の場所(別のリポジトリなど)や、リポジトリ内の別の場所(ファイル、ブランチ、または commit など)へ移動できます。

  2. 参照できるリポジトリのリスト。

画面の上部に検索ボックスがあります。このボックスを使用して、特定のファイルやコードを検索できます。

リポジトリの操作

リポジトリを開く

リポジトリを開くには、メイン画面でその名前をクリックします。

あるいは、[パンくずリスト] ツールバーを使用して特定のリポジトリを参照します。このツールバーにはリポジトリ内の現在の場所が表示され、すばやく別の場所(別のリポジトリなど)や、リポジトリ内の別の場所(ファイル、ブランチ、または commit など)へ移動できます。

リポジトリを切り替える

別のリポジトリに切り替えるには、リポジトリを [パンくずリスト] ツールバーから選択します。

特定のリポジトリを commit で表示する

特定のリポジトリを commit で表示するには:

  1. リポジトリのビューからファイルを選択します。
  2. [パンくずリスト] ツールバーから、[ブランチ] メニューを開きます。
  3. 表示されたサブメニューで、[commit] をクリックします。
  4. 表示したい commit を選びます。

インターフェースに、その commit で存在していたリポジトリが表示されます。

ブランチ、commit、タグを開く

デフォルトでは、コード検索およびソース閲覧インターフェースは、デフォルト ブランチへのリポジトリを開きます。 別のブランチを開くには、[パンくずリスト] ツールバーで [ブランチ/commit/タグ] メニューをクリックします。サブメニューが開き、ブランチ名、タグ名、または検索ボックスを使用してブランチを選択できます。

  • ブランチ名を使用してブランチを選択するには、[ブランチ] を選択してからブランチの名前をクリックします。
  • タグ名を使用してブランチを選択するには、[タグ] を選択してからタグ名をクリックします。
  • commit ID を使用してブランチを選択するには、[commit] を選択してから commit ID をクリックします。
  • ブランチ、commit、またはタグを検索するには、対応するアイテムを選択して、検索語句を検索ボックスに入力します。

ファイルを操作する

メイン画面でリポジトリを選択すると、画面が変わり、そのリポジトリのビューが表示されます。README ファイルが存在する場合は、画面の右側にあるファイル ペインにその内容が表示されます。それ以外の場合は、リポジトリのファイルとフォルダのリストが表示されます。 画面の左側には、リポジトリのファイルとフォルダのツリービューが表示されます。このツリーを使用して、特定のファイルを参照して開くことができます。

リポジトリを表示している場合、[パンくずリスト] ツールバーには次の 3 つのコンポーネントが表示されます。

  • [リポジトリ] メニュー。ここから別のリポジトリを選択できます。
  • [ブランチ/commit/タグ] メニュー。ここから特定のブランチ、タグ、commit を選択できます。
  • [ファイルパス] ボックス。現在のファイルまたはフォルダの名前と対応するパスが表示されます。

ファイルを開く

ファイルを開くには、そのディレクトリを参照して選択します。リポジトリのビューが更新され、ファイルの内容がファイル ペインに表示され、リポジトリ内の場所がツリー ペインに表示されます。

ファイルの変更を表示する

ファイルの変更を表示するには:

  1. リポジトリのビューからファイルを選択します。
  2. 右上にある [BLAME] をクリックします。

ファイル ペインが更新され、ファイルに変更を加えたユーザーと日時が表示されます。

変更履歴を表示する

ファイルの変更履歴を表示するには:

  1. リポジトリのビューからファイルを選択します。
  2. 右上にある [**履歴**] をクリックします。 [変更履歴] ペインが表示され、このファイルの commit が表示されます。

コードレビューを表示する

Gerrit コードレビューの場合は、[変更履歴] ペインからツールを直接開くことができます。

ファイルのコードレビューを表示するには:

  1. リポジトリのビューからファイルを選択します。
  2. 右上にある [**履歴**] をクリックします。[変更履歴] ペインが表示され、このファイルの commit が表示されます。
  3. commit にカーソルを合わせます。[その他] ボタン(縦に 3 つ並んだ点)が表示されます。
  4. [その他] ボタンをクリックします。
  5. [コードレビューを表示] を選択します。

新しいブラウザ ウィンドウで Gerrit Code Review ツールが開きます。

特定の commit でファイルを開く

特定の commit でファイルを開くには:

  1. リポジトリのビューからファイルを選択します。
  2. 右上にある [**履歴**] をクリックします。[変更履歴] ペインが表示され、このファイルの commit が表示されます。
  3. commit にカーソルを合わせます。[表示] ボタンが表示されます。
  4. [表示] ボタンをクリックします。

ファイルを別の commit と比較する

別の commit でファイルを比較するには:

  1. リポジトリのビューからファイルを選択します。2 つの異なる commit から比較するには、まずその commit でファイルを開きます。
  2. commit にカーソルを合わせます。[DIFF] ボタンが表示されます。
  3. [DIFF] ボタンをクリックします。

ファイル ペインが更新され、2 つのファイルが並べて比較表示されます。2 つの commit のうち古いものが常に左側に表示されます。

[変更履歴] ペインで、両方の commit がハイライト表示され、commit が左側または右側に表示されるかを示すラベルが表示されます。

いずれかのファイルを変更するには、[変更履歴] ペインで commit にカーソルを合わせます。次に、[] ボタンまたは [] ボタンをクリックして、差分の左側または右側に commit を開きます。

相互参照を参照する

ソース リポジトリを参照するもう 1 つの方法は、相互参照を使用することです。これらの参照は、指定されたソースファイル内にハイパーリンクとして自動的に表示されます。

相互参照を簡単に識別できるようにするには、右上にある [**相互参照**] をクリックします。このオプションを選択すると、ファイル内のすべての相互参照の下に下線が表示されます。

注: [相互参照] がグレー表示されている場合は、そのファイルで相互参照を使用できないことを示します。

相互参照をクリックして、[相互参照] ペインを開きます。このペインには次の 2 つのセクションがあります。

  • [定義] セクション。参照を定義するファイルが一覧表示されます。
  • [参照] セクション。参照も表示されるファイルが一覧表示されます。

どちらのセクションにも、ファイルの名前と、参照を含む行が表示されます。[相互参照] ペインからファイルを開くには、行番号のエントリをクリックします。ファイルがペインの新しいセクションに表示されるため、元のファイルを表示したまま、ファイルを参照できます。

[ファイル] ペインと同様に、[相互参照] ペインを使用して相互参照を参照できます。このペインにはパンくずリストが表示され、さまざまな相互参照間を移動できます。

画面の上部にある検索ボックスを使用して、特定のファイルやコード スニペットを検索できます。検索は常にデフォルト ブランチに対して行われます。

デフォルトでは、すべての検索で RE2 正規表現 が使用されます。正規表現を使用しない場合は、検索文字列を二重引用符(")で囲みます。

注: 特定のファイルをすばやく検索するには、ピリオドの前にバックスラッシュを追加するか、ファイル名全体を引用符で囲みます。

foo\.java
"foo.java"

次のフィルタを使用して検索を絞り込むことができます。

フィルタ その他のオプション 説明
lang: 言語: ファイル言語で完全一致を実行します。 lang:java test
ファイル: filepath:
path:
f:
case:yes 検索で大文字と小文字が区別されるようにします。デフォルトでは、検索で大文字と小文字は区別されません。 case:yes Hello World
class: クラス名を検索します。 class:MainClass
function: func: 関数名を検索します。 function:print
- 検索から特定の用語を除外します。 hello -world
Example Source: This is a test Example Translation: Dies ist ein Test Source: This is a test with another placeholder Translation: Dies ist ein Test mit einem anderen Platzhalter ., \, ( などの特殊文字をエスケープします。 run\(\)
"[term]" リテラル検索を実行します。 "class:main"

その他のサポート

問題を報告するには、画面の右上隅に表示される [フィードバック] ボタンをクリックし、表示されたフォームにフィードバックを入力します。