Git source editor  |  Android Open Source Project Skip to main content Docs What's new? Release notes Latest security bulletins Latest Compatibility Definition Document (CDD) Site updates Getting Started About Start Download Builds Test Create Contribute Community Tools, build, and related reference Security Overview Bulletins Features Testing Best Practices Core Topics Architecture Audio Camera Connectivity Data Display Fonts Graphics Interaction Media Performance Permissions Power Runtime Settings Storage Tests Updates Virtualization Compatibility Compatibility Definition Document (CDD) Compatibility Test Suite (CTS) Android Devices Cuttlefish Enterprise TV Automotive Overview Software Defined Vehicle In-vehicle Infotainment Release Details Reference HIDL HAL Trade Federation Security Test Suite Android Code Search / English Deutsch Español – América Latina Français Indonesia Italiano Polski Português – Brasil Tiếng Việt Türkçe Русский עברית العربيّة فارسی हिंदी বাংলা ภาษาไทย 中文 – 简体 中文 – 繁體 日本語 한국어 Sign in Documentation What's New? Getting Started Security Core Topics Compatibility Android Devices Automotive Reference Docs More What's New? Getting Started Security Core Topics Compatibility Android Devices Automotive Reference Android Code Search Overview About AOSP overview FAQ Start Try Android development Understand terminology Set up for AOSP development (9.0 or later) Set up for AOSP development (2.3 - 8.0) Download Download the Android source Troubleshoot and fix sync issues Source control tools Build Build overview Build Android Use feature launch flags Feature launch flag overview Determine flag usage and type Declare an aconfig flag Wrap code change in feature launch flag Set feature launch flag values Change a flag's value at runtime Declare and use a build flag Test code within feature launch flags Build kernels Build Pixel kernels Convert from Make to Soong Implement Java SDK library Android Rust Introduction Android Rust modules Binary modules Library modules Test modules Fuzz modules Source generators Source generators overview Bindgen bindings modules Protobuf modules Hello Rust example Android Rust patterns Rust IDE setup Compile with Jack (6.0 - 8.1) Create Source control workflow Custom device development Add a new device type Build for 32-bit and 64-bit architectures Use reference boards Create a software bill of materials (SBOM) Configure and handle update ownership for apps Test Test a build Flash with Fastboot Flash with Android Flash Tool Test with the cuttlefish emulator Use Android Emulator virtual devices Contribute Overview Android Code Search Contributor license agreements and headers Release lifecycle Submit code changes Contribute to upstream projects Git source editor Review a change Download build artifacts Report and track bugs Code with respect AOSP Java code style for contributors API guidelines Overview Android async and nonblocking API guidelines Android API client-side caching guidelines Community Code of conduct Discussion groups, contacts, and additional resources Tools, build, and related reference Overview Android.bp file format Kernel branches and their build systems Codenames, tags, and build numbers Fastboot key combinations Repo command reference What's new? Release notes Latest security bulletins Latest Compatibility Definition Document (CDD) Site updates Getting Started About Start Download Builds Test Create Contribute Community Tools, build, and related reference Security Overview Bulletins Features Testing Best Practices Core Topics Architecture Audio Camera Connectivity Data Display Fonts Graphics Interaction Media Performance Permissions Power Runtime Settings Storage Tests Updates Virtualization Compatibility Compatibility Definition Document (CDD) Compatibility Test Suite (CTS) Android Devices Cuttlefish Enterprise TV Automotive Overview Software Defined Vehicle In-vehicle Infotainment Release Details Reference HIDL HAL Trade Federation Security Test Suite Effective in 2026, to align with our trunk stable development model and ensure platform stability for the ecosystem, we will publish source code to AOSP in Q2 and Q4. For building and contributing to AOSP, use android-latest-release. The android-latest-release manifest branch will always reference the most recent release pushed to AOSP. For more information, see Changes to AOSP. AOSP Docs Getting Started Git source editor Stay organized with collections Save and categorize content based on your preferences. Overview Git source editor (ci.android.com/edit) is a browser-based tool for editing files in the Android Open Source Project (AOSP) and uploading changes to Gerrit. It’s intended for making minor changes to a small number of files, and provides a faster workflow than downloading the Android source tree. You should be familiar with the full process of submitting changes to AOSP using Git, Repo, and Gerrit before using Git source editor. When you edit a file using Git source editor, all of the work happens on your local machine, until you upload changes to create a Gerrit changelist. Caution: Because changes are stored only in the browser, they're lost if you refresh or close the browser tab before uploading them. Log in Load Git Source Editor in a browser. Click Log in to log in to your account. Note: Make sure to log in with the account that has Gerrit privileges for the branches you want to edit. Figure 1. Login button Edit files and changes Git Source Editor has these main workflows: Edit one or more files of your choice, in the branch that you choose. Edit a change. When you edit a change, the result depends on who created the change: If you created the change, your Git Source Editor edits get patched into the change as a new patchset. If someone else created the change, your Git Source Editor edits create a new change that you own, based on the change you loaded. Load what you want to edit Start an editing session by loading either a file or a change. Load files Enter the URL of the file you want to edit in the file/change path box at the top of the page. Sample file path: https://android.googlesource.com/platform/build/+show/refs/heads/android17-release/Changes.md Click Load file or change. Figure 2. Loading a file or change The file loads in the editor pane. The navigation pane to the left of the editor pane is a file browser, which opens the repo, with your file preloaded. Figure 3. A file loaded into the editing pane Note: Be sure to follow the remaining steps to submit your CL before refreshing or closing your browser tab. Because the edited files are stored on your local machine, refreshing or closing your browser tab here loses any changes you made. You can use the navigation pane to open more files within the same repo. If you open multiple files, each file appears as a tab in the row above the editing pane. Click a tab to open that file in the editing pane. Figure 4. Tabs for loaded files Load a change Navigate to the change you want to edit by entering the URL of a Gerrit changelist into the file/change path box at the top of the page (see Figure 2). Sample change link: https://android-review.googlesource.com/c/platform/build/soong/+/1284176 The files in the change open in the editing pane (see Figure 3). If the change includes multiple files, each file appears as a tab in the row above the editing pane (see Figure 4). Click a tab to open that file in the editing pane. Note: Be sure to follow the remaining steps to submit your CL before refreshing or closing your browser tab. Because the edited files are stored on your local machine, refreshing or closing your browser tab here loses any changes you made. Make your edits Edit files using the text editing pane. Files you edit appear in the Pending changes list below the editing pane. If you accidentally close the tab of a file with edits, you can reopen the file with the edits intact by clicking its name in the Pending changes list. Submit changes You create and publish your change to Gerrit in Git Source Editor. Then you track the change's approval in Gerrit. Create and publish the changes Follow this procedure to create and publish the changes you’ve made. Click the appropriate button: Click Create change if you're creating a new change. Click Update change if you are updating an existing change. A dialog box opens. Figure 5. Create Change dialog box Enter a change description, which will become the change description in Gerrit. This description is required. If you are editing an existing change, you can edit its description if you want. Optionally, clear or select the Publish on create checkbox. This box is selected by default. If this box is selected when you create the change, the change is immediately published to Gerrit. If the box isn't selected, the change is uploaded to Gerrit but not published. Click Create. The change is uploaded to Gerrit. If you selected the Publish on create checkbox, the change is also published in Gerrit. The change is linked in a notification at the top of the screen. Figure 6. Change created notification Track change approval in Gerrit Track change submission status directly in Gerrit, as you would any other change. Figure 7. Tracking change submission status in Gerrit View file diffs Select the Diff checkbox below the editing pane to view the diffs of edits you’ve made to the file that’s active in the editing pane. This is useful when changing a file and when editing an existing change. Figure 8. Viewing file diffs Revert files You can revert changes from a single file or from all the files in the pending changelist. Both revert options revert changes only in Git Source Editor. They will NOT update the change in Gerrit. Revert a single file To revert a single file, click the X next to the filename in the Pending changes list. Figure 9. Pending changes section Revert all files To revert all files at once, click Revert all files below the editing pane. Figure 10. Revert all files button A popup dialog box opens. Click Revert all to revert changes in all pending files, or click Cancel to retain the changes and continue editing. Figure 11. Revert all files confirmation dialog box Edit a page directly from Android code search You can open a file in Git Source Editor directly from Android code search. This is helpful if you need to locate the file before editing it. Follow this procedure to edit a file directly from Android code search. In Android Code Search (cs.android.com), navigate to the file you are interested in editing. Click Edit code. Figure 12. Android Code Search Edit code button Git Source Editor opens with the file preselected for editing. Select the Git branch in which you want to edit the file from the Select a git branch dropdown list, then click Pick branch. Figure 13. Selecting a Git branch to edit The file opens in the editing pane. Continue editing as described in the Making Your Edits section. You can open additional files to edit as described in the Loading files section Resolve conflicts To resolve conflicts: In the Source Editor, navigate to the change. After the change is loaded, the conflicting files are listed in the bottom portion of the screen. For example, Figure 14 shows that theAndroid.pb file has a conflict. Figure 14. Source editor conflict Click a conflicting file. The file loads and shows conflicting blocks of content in succession and within Git markers (<<<<<<< and >>>>>>>). Figure 15. Source editor conflict markers Fix the conflict by editing the file and manually removing the conflict markers around the content you want to keep. Also, remove the content and conflict markers for content you don't want to keep. Click Create Change to create a new change. The Create Change dialog appears. Figure 16. Create change Type a change description and click Create. Send feedback Use the bug button in the top right corner to provide feedback about Git Source Editor. Related documentation Android code search Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates. Last updated 2026-06-17 UTC. [[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-06-17 UTC."],[],[]] Build Android repository Requirements Downloading Preview binaries Factory images Driver binaries Connect @Android on X @AndroidDev on X Android Blog Google Security Blog Platform on Google Groups Building on Google Groups Porting on Google Groups Get help Android Help Center Pixel Help Center www.android.com Google Mobile Services Stack Overflow Issue Tracker About Android Community Legal License Privacy Site feedback Manage cookies English Deutsch Español – América Latina Français Indonesia Italiano Polski Português – Brasil Tiếng Việt Türkçe Русский עברית العربيّة فارسی हिंदी বাংলা ภาษาไทย 中文 – 简体 中文 – 繁體 日本語 한국어