Kod AOSP przechodzi przez różne gałęzie, zanim zostanie połączony w oficjalną wersję. Rysunek 1 przedstawia różne etapy cyklu życia wersji.
Rysunek 1. Cykl życia wersji AOSP.
Oto kroki cyklu życia:
Kod poprzedniego projektu przepływa do zewnętrznego gałęzi rozwoju o nazwie
main
.Projekt nadrzędny to projekt typu open source, z którego AOSP pobiera kod. Oprócz projektów takich jak jądro Linuxa i WebKit Google migruje do AOSP niektóre półautonomiczne projekty Androida, takie jak ART, narzędzia Android SDK i Bionic. Możesz bezpośrednio współtworzyć niektóre projekty upstream. Więcej informacji znajdziesz w artykule Współpraca nad zewnętrznym projektem.
Zewnętrzna gałąź rozwoju to ta, którą pobierasz i modyfikujesz na swoje urządzenie. W tej gałęzi możesz dodawać kod do następnej wersji AOSP.
Zmiany, które zostały przesłane i zatwierdzone do uwzględnienia w głównej gałęzi, są automatycznie dostępne dla wszystkich użytkowników korzystających z głównej gałęzi.
Zatwierdzone zmiany w głównym repozytorium są automatycznie przekazywane do wewnętrznego gałęzi rozwojowej Google. Ta gałąź jest dostępna tylko w Google i służy do dodawania nowych funkcji do następnej wersji.
Około co kwartał tworzona jest wewnętrzna gałąź wersji na podstawie wewnętrznej gałęzi rozwoju. Ta gałąź zawiera cały kod przeznaczony do następnego wydania w AOSP. Google może wybrać zmiany do tej gałęzi wersji, aby wprowadzić poprawki błędów i ulepszenia działania .
W pewnym momencie kod z wewnętrznego gałęzi wersji jest przesyłany w górę, aby scalić go z zewnętrzną gałęzią rozwoju (
main
), i używany do tworzenia kopii tylko do odczytu gałęzi wersji na publicznym hoście AOSP.