Git Source Editor

概要

Git Source Editor(ci.android.com/edit)は、Android オープンソース プロジェクト(AOSP)でファイルを編集し、Gerrit に変更をアップロードするためのブラウザベースのツールです。少数のファイルに小さな変更を加えることを目的としており、Android ソースツリーをダウンロードするよりも高速なワークフローを提供します。Git Source Editor を使用する前に、Git、Repo、Gerrit を使用して AOSP に変更を送信する全プロセスについて十分に理解しておく必要があります。

Git Source Editor を使用してファイルを編集する際、変更をアップロードして Gerrit の変更リストを作成するまで、すべての作業がローカルマシンで行われます。

ログイン

  1. ブラウザで、Git Source Editor を読み込みます。
  2. [ログイン] をクリックしてアカウントにログインします。

    [ログイン] ボタン

    図 1. [ログイン] ボタン

ファイルと変更を編集する

Git Source Editor の主なワークフローは次のとおりです。

  • 選択したブランチで 1 つ以上の任意のファイルを編集します。
  • 変更内容を編集します。変更内容を編集する際、編集結果は変更を作成したユーザーごとに異なります。
    • 変更を作成すると、Git Source Editor で編集した内容が新しいパッチセットとして変更にパッチ適用されます。
    • 他のユーザーが変更を作成した場合、Git Source Editor は読み込んだ変更に基づいて、所有権を持つ新しい変更を作成します。

編集対象を読み込む

ファイルまたは変更を読み込んで編集セッションを開始します。

ファイルを読み込む

  1. ページ上部の [ファイル / 変更パス] ボックスに、編集するファイルの URL を入力します。

    ファイルパスの例: https://android.googlesource.com/platform/build/+show/refs/heads/main/Changes.md

  2. [ファイルまたは変更を読み込む] をクリックします。

    ファイルまたは変更の読み込み

    図 2. ファイルまたは変更の読み込み

    ファイルが編集パネルに読み込まれます。編集パネルの左側にあるナビゲーション パネルは、ファイルをプリロードしてリポジトリを開くファイル ブラウザです。

    編集パネルに読み込まれたファイル

    図 3. 編集パネルに読み込まれたファイル

ナビゲーション パネルを使用して、同じリポジトリ内でさらにファイルを開くことができます。複数のファイルを開くと、各ファイルが編集パネルの上の行にタブとして表示されます。タブをクリックして、そのファイルを編集パネルで開きます。

読み込まれたファイルのタブ

図 4. 読み込まれたファイルのタブ

変更を読み込む

ページ上部の [ファイル / 変更パス] ボックスに、Gerrit の変更リストの URL を入力して、編集する変更に移動します(図 2 を参照)。

変更リンクの例: https://android-review.googlesource.com/c/platform/build/soong/+/1284176

変更内のファイルが編集パネルで開きます(図 3 を参照)。

変更に複数のファイルが含まれる場合は、各ファイルが編集パネルの上の行にタブとして表示されます(図 4 を参照)。タブをクリックして、そのファイルを編集パネルで開きます。

編集を行う

テキスト編集パネルを使用してファイルを編集します。編集するファイルは、編集パネルの下の [保留中の変更] リストに表示されます。編集中のファイルのタブを誤って閉じてしまった場合は、[保留中の変更] リストでファイル名をクリックすると、編集したファイルが再び開きます。

変更を送信する

Git Source Editor で変更を作成して、Gerrit に公開します。その後、Gerrit で変更の承認を追跡します。

変更を作成して公開する

以下の手順に沿って変更を作成し、公開します。

  1. 以下の該当するボタンをクリックします。

    • 新しい変更を作成する場合は、[変更を作成] をクリックします。
    • 既存の変更を更新する場合は、[変更を更新] をクリックします。

    ダイアログ ボックスが開きます。

    [変更を作成] ダイアログ ボックス

    図 5. [変更を作成] ダイアログ ボックス

  2. 変更の説明を入力します。これは Gerrit で変更の説明になります。この説明は必須です。既存の変更を編集する場合は、必要に応じて説明を編集できます。

  3. 必要に応じて、[作成時に公開] チェックボックスをオフまたはオンにします。

    このボックスは、デフォルトでオンになっています。

    変更を作成するときにこのチェックボックスをオンにすると、変更はすぐに Gerrit に公開されます。チェックボックスがオフになっている場合、変更は Gerrit にアップロードされますが、公開されません。

  4. [作成] をクリックします。

    変更が Gerrit にアップロードされます。[作成時に公開] チェックボックスをオンにした場合、その変更は Gerrit でも公開されます。変更は画面上部の通知にリンクされます。

    変更作成の通知

    図 6. 変更作成の通知

Gerrit での変更の承認を追跡する

他の変更と同様に、Gerrit 内の変更の送信ステータスを直接追跡します。

Gerrit での変更送信ステータスの追跡

図 7. Gerrit での変更送信ステータスの追跡

ファイルの差異を表示する

編集パネルの下にある [差異] チェックボックスをオンにすると、編集パネルでアクティブになっているファイルで行った編集の差異が表示されます。これは、ファイルを変更する場合や、既存の変更を編集する際に役立ちます。

ファイルの差異の表示

図 8. ファイルの差異の表示

ファイルを元に戻す

1 つのファイルまたは保留中の変更リスト内のすべてのファイルから、変更を元に戻すことができます。どちらの「元に戻す」オプションも、Git Source Editor 内での変更のみを元に戻します。Gerrit 内の変更は更新されません。

1 つのファイルを元に戻す

1 つのファイルを元に戻すには、[保留中の変更] リストでファイル名の横にある [X] をクリックします。

[保留中の変更] セクション

図 9. [保留中の変更] セクション

すべてのファイルを元に戻す

すべてのファイルを一度に元に戻すには、編集パネルの下にある [すべてのファイルを元に戻す] をクリックします。

[すべてのファイルを元に戻す] ボタン

図 10. [すべてのファイルを元に戻す] ボタン

ダイアログ ボックスのポップアップが開きます。[すべてを元に戻す] をクリックして保留中のすべてのファイルの変更を元に戻すか、[キャンセル] をクリックして変更を保持し、編集を続けます。

[すべてのファイルを元に戻す] の確認のダイアログ ボックス

図 11. [すべてのファイルを元に戻す] の確認のダイアログ ボックス

Git Source Editor で、Android ソースコード検索から直接ファイルを開くことができます。これは、編集する前にファイルを見つける必要がある場合に役立ちます。

以下の手順に沿って、Android ソースコード検索から直接ファイルを編集します。

  1. Android ソースコード検索(cs.android.com)で、編集するファイルに移動します。

  2. [コードを編集] をクリックします。

    Android ソースコード検索の [コードを編集] ボタン

    図 12. Android ソースコード検索の [コードを編集] ボタン

    Git Source Editor が編集のために事前に選択されたファイルを開きます。

  3. [Git ブランチを選択する] プルダウン リストで編集するファイルの Git ブランチを選択し、[ブランチを選択] をクリックします。

    編集する Git ブランチの選択

    図 13. 編集する Git ブランチの選択

    編集パネルでファイルが開きます。

  4. 編集を行うの説明にあるように、編集を続けます。

  5. ファイルを読み込むの説明にあるように、追加のファイルを開いて編集できます。

競合を解決する

競合を解決する手順は次のとおりです。

  1. Source Editor で変更に移動します。変更が読み込まれた後、競合しているファイルが画面の下部に表示されます。たとえば、図 14 は Android.pb ファイルが競合していることを示しています。

    Source Editor の競合

    図 14. Source Editor の競合

  2. 競合しているファイルをクリックします。ファイルが読み込まれ、コンテンツ内の競合しているブロックが Git マーカー(<<<<<<<>>>>>>>)内に連続して表示されます。

    競合マーカー

    図 15. Source Editor の競合マーカー

  3. 競合を解決するには、ファイルを編集し、保持したいコンテンツを囲んでいる競合マーカーを手動で削除します。また、保持しないコンテンツについては、コンテンツと競合マーカーを削除します。

  4. 新しい変更を作成するには、[Create Change] をクリックします。[Create Change] ダイアログが表示されます。

    変更の作成

    図 16. 変更の作成

  5. 変更の説明を入力して、[Create] をクリックします。

フィードバックを送信する

右上隅にあるバグボタン バグボタンの画像 を使用して、Git Source Editor に関するフィードバックを送信します。