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