コードベースの検索

問題を報告 ソースを表示

プロダクトの概要

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

ご利用にあたって

ソースコード検索とソース ブラウジング インターフェースにアクセスするには、ウェブブラウザで 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. 契約にカーソルを合わせます。その他ボタン(縦に 3 つ並んだ点)が表示されます。
  4. [詳細] ボタンをクリックします。
  5. [コードレビューを表示] を選択します。

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

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

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

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

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

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

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

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

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

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

相互参照のブラウジング

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

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

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

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

  • 定義セクション。参照を定義するファイルが一覧表示されます。
  • References セクション: 参照が出現するファイルがリストアップされています。

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

[File] ペインの場合と同様に、[Cross Reference] ペインを使用して相互参照をブラウジングできます。この操作を行うと、ペインにパンくずリストが表示され、異なる相互参照間を移動できます。

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

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

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

foo\.java
"foo.java"

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

フィルタ その他のオプション 説明
lang: language: ファイルの言語で完全一致を実行します。 lang:java テスト
file: filepath:
path:
f:
case:yes 検索で大文字と小文字が区別されるようにします。デフォルトでは、検索で大文字と小文字は区別されません。 case:yes Hello World
class: クラス名を検索します。 class:MainClass
function: func: 関数名を検索します。 function:print
- 検索から用語を否定します。 hello -world
\ .、\、( などの特殊文字をエスケープします。 run\(\)
「[単語]」 リテラル検索を行います。 "class:main"

その他のサポート

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