Git 源代碼編輯器

概述

Git Source Editor (ci.android.com/edit) 是一個基於瀏覽器的工具,用於編輯 Android 開源項目 (AOSP) 中的文件並將更改上傳到 Gerrit。它旨在對少量文件進行細微更改,並提供比下載 Android 源代碼樹更快的工作流程。在使用 Git Source Editor 之前,您應該熟悉使用 Git、Repo 和 Gerrit 向 AOSP 提交更改的完整過程。

當您使用 Git 源代碼編輯器編輯文件時,所有工作都在您的本地計算機上進行,直到您上傳更改以創建 Gerrit 更改列表。

在登錄

  1. 在瀏覽器中加載Git 源代碼編輯器。
  2. 單擊登錄以登錄您的帳戶。

    登錄按鈕

    圖 1.登錄按鈕

編輯文件和更改

Git 源代碼編輯器具有以下主要工作流程:

  • 在您選擇的分支中編輯您選擇的一個或多個文件。
  • 編輯更改。編輯更改時,結果取決於創建更改的人:
    • 如果您創建了更改,您的 Git 源代碼編輯器編輯將作為新補丁集修補到更改中。
    • 如果其他人創建了更改,您的 Git 源代碼編輯器編輯會根據您加載的更改創建您擁有的新更改。

加載您要編輯的內容

通過加載文件或更改來啟動編輯會話。

加載文件

  1. 在頁面頂部的文件/更改路徑框中輸入要編輯的文件的 URL。

    示例文件路徑:https://android.googlesource.com/platform/build/+show/refs/heads/master/Changes.md

  2. 單擊加載文件或更改

    加載文件或更改

    圖 2.加載文件或更改

    文件加載到編輯器窗格中。編輯器窗格左側的導航窗格是一個文件瀏覽器,它會打開存儲庫,並預先加載您的文件。

    加載到編輯窗格中的文件圖 3.加載到編輯窗格中的文件

您可以使用導航窗格在同一個 repo 中打開更多文件。如果您打開多個文件,每個文件都會在編輯窗格上方的行中顯示為一個選項卡。單擊選項卡以在編輯窗格中打開該文件。

已加載文件的選項卡

圖 4.加載文件的選項卡

加載更改

通過在頁面頂部的文件/更改路徑框中輸入 Gerrit 更改列表的 URL,導航到要編輯的更改(參見圖 2)。

示例更改鏈接:https://android-review.googlesource.com/c/platform/build/soong/+/1284176

更改中的文件在編輯窗格中打開(參見圖 3)。

如果更改包括多個文件,則每個文件在編輯窗格上方的行中顯示為一個選項卡(參見圖 4)。單擊選項卡以在編輯窗格中打開該文件。

進行編輯

使用文本編輯窗格編輯文件。您編輯的文件出現在編輯窗格下方的待定更改列表中。如果您不小心關閉了帶有編輯的文件的選項卡,您可以通過在“待定更改”列表中單擊其名稱來重新打開帶有完整編輯的文件。

提交更改

您在 Git 源代碼編輯器中創建並發布對 Gerrit 的更改。然後您在 Gerrit 中跟踪更改的批准。

創建和發布更改

按照此過程創建並發布您所做的更改。

  1. 單擊相應的按鈕:

    • 如果您要創建新更改,請單擊創建更改。
    • 如果要更新現有更改,請單擊更新更改。

    將打開一個對話框。

    創建更改對話框

    圖 5.創建更改對話框

  2. 輸入更改描述,它將成為 Gerrit 中的更改描述。此描述是必需的。如果您正在編輯現有更改,您可以根據需要編輯其描述。

  3. 或者,清除或選中創建時發布複選框。

    默認情況下選中此框。

    如果在創建更改時選中此框,則更改會立即發佈到 Gerrit。如果未選中該框,則更改會上傳到 Gerrit 但不會發布。

  4. 單擊創建

    更改將上傳到 Gerrit。如果您選擇了在創建時發布複選框,則更改也會在 Gerrit 中發布。更改鏈接在屏幕頂部的通知中。

    更改創建通知

    圖 6.更改創建通知

在 Gerrit 中跟踪變更批准

與其他任何更改一樣,直接在 Gerrit 中跟踪更改提交狀態。

在 Gerrit 中跟踪更改提交狀態

圖 7.在 Gerrit 中跟踪更改提交狀態

查看文件差異

選擇編輯窗格下方的差異複選框以查看您對編輯窗格中處於活動狀態的文件所做的編輯的差異。這在更改文件和編輯現有更改時很有用。

查看文件差異

圖 8.查看文件差異

還原文件

您可以從單個文件或掛起的更改列表中的所有文件還原更改。兩個恢復選項都只在 Git 源代碼編輯器中恢復更改。他們不會更新 Gerrit 中的更改。

還原單個文件

要恢復單個文件,請單擊待更改列表中文件名旁邊的X。

待更改部分

圖 9.待更改部分

還原所有文件

要一次還原所有文件,請單擊編輯窗格下方的還原所有文件

還原所有文件按鈕

圖 10.恢復所有文件按鈕

將打開一個彈出對話框。單擊全部還原以還原所有待處理文件中的更改,或單擊取消保留更改並繼續編輯。

還原所有文件確認對話框

圖 11.還原所有文件確認對話框

您可以直接從Android 代碼搜索在 Git 源代碼編輯器中打開文件。如果您需要在編輯之前找到文件,這將很有幫助。

按照此過程直接從 Android 代碼搜索編輯文件。

  1. 在 Android 代碼搜索 (cs.android.com) 中,導航到您有興趣編輯的文件。

  2. 單擊編輯代碼

    Android 代碼搜索編輯代碼按鈕

    圖 12. Android 代碼搜索編輯代碼按鈕

    Git 源代碼編輯器將打開,其中包含預選的文件進行編輯。

  3. Select a git branch下拉列表中選擇要在其中編輯文件的 Git 分支,然後單擊Pick branch

    選擇要編輯的 Git 分支

    圖 13.選擇要編輯的 Git 分支

    該文件將在編輯窗格中打開。

  4. 按照“進行編輯”部分中的說明繼續編輯。

  5. 您可以按照加載文件部分中的說明打開其他文件進行編輯

解決衝突

要解決衝突:

  1. 在源代碼編輯器中,導航到更改。加載更改後,衝突的文件將在屏幕底部列出。例如,圖 14 顯示Android.pb文件存在衝突。

    源編輯器衝突

    圖 14.源編輯器衝突

  2. 單擊有衝突的文件。該文件在 Git 標記( <<<<<<<>>>>>>> )內連續加載並顯示衝突的內容塊。

    衝突標記

    圖 15.源編輯器衝突標記

  3. 通過編輯文件並手動刪除要保留的內容周圍的衝突標記來修復衝突。此外,刪除您不想保留的內容的內容和衝突標記。

  4. 單擊創建更改以創建新更改。將出現“創建更改”對話框。

    創造改變

    圖 16.創建更改

  5. 鍵入更改描述並單擊創建

發送反饋

使用錯誤按鈕錯誤按鈕圖片在右上角提供有關 Git 源代碼編輯器的反饋。