blob: 074a54c1482224e419c2f3636f86da02b641c1ce [file] [log] [blame] [view]
AndroidX Core Team2e416b22020-12-03 22:58:07 +00001# AndroidX Branch Workflow
2
3[TOC]
4
AndroidX Core Team408c27b2020-12-15 15:57:00 +00005## Single Development Branch [androidx-main]
AndroidX Core Team2e416b22020-12-03 22:58:07 +00006
7All feature development occurs in the public AndroidX master dev branch of the
AndroidX Core Team408c27b2020-12-15 15:57:00 +00008Android Open Source Project: `androidx-main`. This branch serves as the central
9location and source of truth for all AndroidX library source code. All alpha and
10beta version development, builds, and releases will be done ONLY in this branch.
AndroidX Core Team2e416b22020-12-03 22:58:07 +000011
12## Release Branches [androidx-\<feature\>-release]
13
14When a library updates to rc (release-candidate) or stable, that library version
15will be snapped over to that librarys release branch. If that release branch
16doesnt exist, then a release branch will be created for that library, snapped
AndroidX Core Team408c27b2020-12-15 15:57:00 +000017from androidx-main at the commit that changed the library to an rc or stable
18version.
AndroidX Core Team2e416b22020-12-03 22:58:07 +000019
20Release branches have the following properties:
21
22* A release branch will contain rc or stable versions of libraries.
23* Release branches are internal branches.
24* Release branches can **ONLY** be changed through
25 cherry-picks
26* Bug-fixes and updates to that rc or stable version will need to be
27 individually cherry-picked
28* No alpha or beta versions will exist in a release branch.
AndroidX Core Team408c27b2020-12-15 15:57:00 +000029* Toolchain and other library wide changes to androidx-main will be synced to
30 each release branch.
AndroidX Core Team2e416b22020-12-03 22:58:07 +000031* Release branches will have the naming format
32 `androidx-<feature-name>-release`
AndroidX Core Team408c27b2020-12-15 15:57:00 +000033* Release branches will be re-snapped from `androidx-main` for each new minor
34 version release (for example, releasing 2.2.0-rc01 after 2.1.0)
AndroidX Core Team2e416b22020-12-03 22:58:07 +000035
36## Platform Developement and AndroidX [androidx-platform-dev]
37
38Platform specific development is done using our INTERNAL platform development
39branch `androidx-platform-dev`.