Ciclo de vida de lançamento

O código do AOSP navega por diferentes ramificações antes de ser combinado em um lançamento oficial. A Figura 1 mostra as diferentes etapas do ciclo de vida do lançamento.

Ciclo de vida de lançamento do AOSP.

Figura 1. Ciclo de vida de lançamento do AOSP.

Estas são as etapas do ciclo de vida:

  1. O código do projeto upstream flui para a ramificação de desenvolvimento externo, chamada main.

    Um projeto upstream é um projeto de código aberto que fornece código para o AOSP. Além de projetos como o kernel do Linux e o WebKit, o Google migra alguns projetos Android semiautônomos, como o ART, as ferramentas do SDK do Android e o Bionic, para o AOSP. Você pode contribuir diretamente com alguns projetos upstream. Para saber mais, consulte Contribuir com um projeto upstream.

    A ramificação de desenvolvimento externo é o que você baixa e modifica no dispositivo. É ela que você poderá usar para contribuir com o código da próxima versão do AOSP.

  2. As mudanças que são enviadas e aprovadas para inclusão na ramificação principal ficam automaticamente disponíveis para todo mundo.

    As mudanças aprovadas para a ramificação principal fluem automaticamente para a ramificação de desenvolvimento interno do Google. Essa ramificação só pode ser acessada no Google, e é onde adicionamos novos recursos para o próximo lançamento.

  3. A cada trimestre, aproximadamente, uma ramificação de lançamento interno é criada usando a ramificação de desenvolvimento interno. Ela representa todo o código para o próximo lançamento do AOSP. O Google pode fazer cherry-pick de mudanças nessa ramificação de lançamento para resolver bugs e melhorar o desempenho.

  4. Em algum momento, o código na ramificação de lançamento interno é enviado upstream para voltar para a ramificação de desenvolvimento externo (main), onde é usado para criar uma cópia somente leitura de uma ramificação de lançamento no host público do AOSP.