Abertura do branch de versões

Detalhamento do processo de como realizar a abertura de um novo Branch de Versão

Definição do Processo

Resumo do processo

O processo de gerenciamento do Branch de Versões é um ciclo, onde sempre após o fechamento do Branch atual, deverá ser realizada a abertura de um novo Branch, que passará a ser o atual Branch da Versão ou Branch da Versão de Trabalho, onde o mesmo será utilizado até ser fechado e as versões à ele relacionadas sejam liberadas aos clientes. 

O pré-requisito para abertura/início de um novo Branch de Versão será que o Branch da Versão atual tenha sido finalizado.


Envolvidos no processo

Sempre será uma dupla que ficará responsável pela abertura, manutenção e fechamento do Branch da Versão, sendo um desenvolvedor e um testador.


Etapas do processo
  1. Decisão do Fechamento do Branch da Versão
  2. Atualização dos arquivos "Config.ini"
  3. Atualização dos arquivos "Altver.rtf"
  4. Solicitar a inclusão do Branch da versão no main
  5. Geração dos executáveis das versões
  6. Validação e assinatura dos executáveis
  7. Geração das Customizações (DLLs) para liberação das versões
  8. Geração das pastas com as novas versões
  9. Publicação dos executáveis e instaladores
  10. Finalização do fechamento do Branch da Versão
  11. Criação de novos casos para o Branch da Versão
  12. Criação do repositório do Branch de Versão no Azure
  13. Publicação do novo Branch da Versão para a equipe

Ponto inicial do processo

Por se tratar de um processo cíclico, ou seja, o início do processo de gerenciamento do branch X é iniciado logo após a finalização do processo referente ao branch Y (sendo que Y = X - 1). O seu ponto inicial será sempre após a finalização do fechamento do Branch da Versão anterior.


Ponto final do processo

Será a criação do novo Branch da Versão no Azure e a publicação desse novo Branch para a equipe de Desenvolvimento e Qualidade.


Resultado esperado

Realizar toda a documentação do novo Branch da Versão, criando os novos casos no Mantis e publicar os novos casos para as equipes de Desenvolvimento e Qualidade.

Criação do repositório do Branch de Versão no Azure

Após o caso do Branch da Versão ter sido criado no Mantis, será necessário realizar um "New Branch" no Azure.

Essa etapa só poderá ser realizada quando o Branch da Versão anterior já tiver sido vinculado ao main. Portanto antes de realizar essa etapa, confirmar com o desenvolvedor se o Branch já foi vinculado ao main e se pode ser criado o novo Branch de Versão.

O repositório do Branch da Versão deverá ser criado dentro do repositório https://dev.azure.com/SuperSoftDelphi/_git/SistemaERPFISCO

No repositório ir em Branches -> "New Branch" e seguir o modelo:

Em Name:

Número do Branch da Versão+Caso+Número do caso no mantis. Exemplo: "167-Caso-0053630"

Em Base on:

Seguir sempre o padrão deixando em "main"

Após criar o Branch ir em Branches -> 3 pontinhos -> Branch policies

image.png

Acessar a aba Policies deixar essa configuração padrão

image.png

Na aba Security, deixar como padrão:

image.png

Criação dos novos casos para Branch de Versão

Após a liberação e fechamento de um Branch de Versão sempre será necessário realizar a abertura de um novo Branch e, com isso, abrir os casos no Mantis para documentação e manutenção do mesmo.


Criação do Branch da Versão no Mantis

O primeiro passo será a abertura do novo caso do Branch da Versão no Mantis, para isso deveremos preencher os campos conforme exemplos abaixo:

Tipo do Projeto: "Outros";
Categoria: "Outros";
Resumo: "BRANCH DE VERSÕES XXX - GERENCIAMENTO DE CASOS" (sempre incremental em +1);
Descrição: Adicionar a mensagem padrão:

"Caso para controle e gerenciamento dos casos adicionados ao Branch de Versões.

O Branch de Versões é a centralização dos códigos de todos os módulos que estão sendo trabalhados para liberação (Versões cheias).
Todos os casos testados na versão "Por Caso", serão adicionados no Branch de Versões para ser trabalhado para liberação.

Após os casos passarem por testes e retestes e estarem prontos para liberação, os casos são adicionados no TRUNK da Versão de liberação.
O TRUNK será o repositório apenas dos casos que estão 100% finalizados."

Aplicar marcadores: "BRANCH_ERP" ou "BRANCH_FISCO" e "BRANCH_VERSAO"; 
Departamento: Qualidade ERP;
Tipo e Estado: "Nova Versão".

imagem_1.png

imagem_2.png

Após criar o caso, relacioná-lo ao caso 0044448 - Gerenciamento das Versões Correntes:

imagem_5.png

Após a criação do caso do Branch da Versão no Azure  feito pelo Desenvolvedor, copiar o endereço "URL" para o caso no Mantis, no quadro "Informações Adicionais", conforme exemplo:

imagem_3.png

imagem_4.png

Criação dos casos de versionamento dos módulos (Casos pai)

Assim como após a liberação e fechamento de um Branch de Versão é necessário fazer a abertura de um novo, também é necessário criar novos "casos pai" para os módulos que foram liberados no Branch da Versão anterior.

O processo para abertura dos "casos pai" é basicamente o mesmo do que o da abertura do caso do Branch da Versão, salvo algumas exceções. Para a abertura dos casos pai seguir as regras abaixo:

Tipo do Projeto: Deve ser o tipo de projeto de cada módulo, exemplo "Compras", "Vendas", "Estoque", etc.
Categoria: "Outros";
Resumo: "Versão 5.191 - COMPRAS" (Número da versão incremental em +1 e o módulo referente ao caso pai);
Descrição: "Versão 5.191 - COMPRAS" (repetir o campo "Resumo");
Aplicar marcadores: "Não é necessário aplicar marcadores;
Departamento: Qualidade ERP;
Tipo e Estado: "Nova Versão".

imagem_6.png

Após a abertura dos casos, também relacioná-lo ao caso 0044448 - Gerenciamento das Versões Correntes  e também ao Branch atual de versões:

imagem_7.png

Aviso de publicação do novo Branch da Versão para a equipe

Processo feito pelo Desenvolvimento

Após o Branch da Versão ter sido criado tanto no Mantis quanto no Azure, é necessário avisar à equipe de Desenvolvimento e Qualidade que o novo Branch está pronto e que deverão passar a utilizá-lo.

Para isso, no comunicador padrão utilizado pela equipe (atualmente é o Rocket Chat), no canal "Equipe.Delphi.ERP" deverá ser enviada uma mensagem seguindo o padrão:

Pessoal!
BRANCH 168 foi liberado na data 07/04/2026.

Foi criado o caso e pasta no SVN para o BRANCH 169.
https://dev.azure.com/SuperSoftDelphi/SistemaERPFISCO/_git/SistemaERPFISCO?version=GB169-Caso-0053778
Favor utilizar esse BRANCH a partir de hoje.

Obrigado!

[extinto] Criação do repositório do Branch de Versão no SVN

Após o caso do Branch da Versão ter sido criado no Mantis, será necessário realizar um "Copy to" no SVN, copiando o Trunk (https://svn.supersoft.com.br/svn/desenvolvimento/trunk/CodigoBaseSkin) para um novo repositório que será criado para o Branch da Versão.

Essa etapa só poderá ser realizada quando o Branch da Versão anterior já tiver sido vinculado ao Trunk. Portanto antes de realizar essa etapa, confirmar com o desenvolvedor se o Branch já foi vinculado ao Trunk e se pode ser criado o novo Branch de Versão.

O repositório do Branch da Versão deverá ser criado dentro do caminho

ERP:
(https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP)

Fisco:
(https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/Fisco)

e deverá seguir o modelo:

Número do Branch da Versão+Caso+Número do caso no mantis. Exemplo: "042-Caso-0044323"

Dessa forma o endereço completo do Branch da Versão ficará parecido com:

https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/042-Caso-0044323.

Após inserir o caminho de repositório, uma tela de mensagem de log será aberta, e deverá seguir o modelo: 

Número do caso: BRANCH DE VERSÕES + Número do Branch da versão - GERENCIAMENTO DE CASOS. 
Exemplo: "0044760: BRANCH DE VERSÕES 048 - GERENCIAMENTO DE CASOS"

Após a realização de todos os passos, o resultado final deverá ser semelhante a: 

image-1616422198821.png