# Gerenciamento do Branch de Versão

# Índice

### **Resumo** 

O livro "Gerenciamento do Branch de Versão" é composto por três capítulos principais. Cada qual contendo as informações referentes à uma etapa do ciclo de vida do branch da versão. Desde sua criação, passando pela sua manutenção até o processo de fechamento e liberação. Este livro, apesar de ser dirigido à equipe da qualidade, também conta com a participação da equipe de desenvolvimento para a realização de algumas etapas do processo.

---

#### **Sumário**

##### [<span style="text-decoration: underline;">Abertura do branch de versões</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes)

Neste capítulo são tratados os assuntos iniciais à abertura do branch de versões, como criação do caso no mantis, criação do branch no SVN e os detalhes do processo.

##### [<span style="text-decoration: underline;">Manutenção do branch de versões</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/manutencao-do-branch-de-versoes)

Neste capítulo são passadas as informações sobre a manutenção do branch durante sua "vida útil", como relacionar as versões dos módulos que serão liberados e a atualização do código do branch para que esteja sempre atualizado em relação ao trunk.

##### [<span style="text-decoration: underline;">Fechamento do branch e liberação das versões</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/fechamento-do-branch-e-liberacao-de-versoes)

O último capítulo diz respeito ao processo de fechamento e liberação do branch de versões, que sem dúvida é a etapa que exige mais atenção e possui mais itens à serem feitos, podemos citar, a atualização dos arquivos altver e config.ini, geração dos executáveis, publicação e etc.

# Definição do Processo

##### **Resumo do processo**

Em termos de desenvolvimento, **um *Branch* é um galho de um tronco (*Trunk*)**, que é o repositório principal do código fonte do sistema. **Na prática o *Branch* é uma cópia do código onde os desenvolvedores farão as correções/implementações necessárias**, **preservando assim a integridade do código no *Trunk***. Se as mudanças funcionarem conforme o planejado, elas serão mescladas de volta para o "tronco principal" (*Trunk*).

Essa prática é usada o tempo todo durante o desenvolvimento, **onde apesar de o *Trunk* ser o repositório principal do código fonte, todas as alterações devem ser feitas nos *Branchs***, por isso a nomenclatura **Branch de Versão ou Branch de Versão de Trabalho**.

---

##### **Envolvidos no processo**

Indiretamente, toda a equipe de desenvolvimento e qualidade fazem parte do gerenciamento do Branch de Versões. Diretamente cada Branch de Versão terá uma dupla responsável por sua abertura, manutenção e fechamento, ou seja, um desenvolvedor e um testador que darão início ao Branch da Versão e o acompanharão até que o mesmo seja finalizado. Arquivo com a programação dos responsáveis pelo branch de cada versão <span style="text-decoration: underline;">[Clique Aqui](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/programacao-dos-responsaveis-pelo-branch-das-versoes)</span>.

---

##### **Etapas do processo**

- <span style="text-decoration: underline;">[Abertura do Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes)</span>
- <span style="text-decoration: underline;">[Manutenção do Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/manutencao-do-branch-de-versoes)</span>
- <span style="text-decoration: underline;">[Fechamento do Branch e liberação das versões](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/fechamento-do-branch-e-liberacao-de-versoes)</span>

---

##### **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 <span style="text-decoration: underline;">[finalização do fechamento do Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/finalizacao-do-fechamento-do-branch-da-versao)</span> anterior, onde a dupla responsável pelo próximo *Branch* deverá providenciar a <span style="text-decoration: underline;">[abertura](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes)</span> do mesmo, repetindo sempre esse ciclo.

---

##### **Ponto final do processo**

A etapa final do gerenciamento do Branch da Versão será a liberação e <span style="text-decoration: underline;">[finalização do fechamento do Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/finalizacao-do-fechamento-do-branch-da-versao)</span>, quando o mesmo poderá ser considerado como concluído, dando início à abertura do próximo *Branch* e repetindo o ciclo.

---

##### **Resultado esperado**

É esperado que com essa estruturação de *Trunk*, Branch de Versão e Branch por caso (pasta de trabalho de cada desenvolvedor, por caso) mantenha-se a integridade do código fonte do sistema no *Trunk* e que todas as correções/implementações necessárias não sejam realizadas no *Trunk*, evitando problemas e garantindo maior segurança nas liberações e entrega das versões aos clientes.

# Abertura do branch de versões

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

# Nova Página



# 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 <span style="text-decoration: underline;">[finalizado](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/finalizacao-do-fechamento-do-branch-da-versao)</span>.

---

##### **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. [<span style="text-decoration: underline;">Decisão do Fechamento do Branch da Versão</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/decisao-do-fechamento-do-branch-da-versao)
2. [<span style="text-decoration: underline;">Atualização dos arquivos "Config.ini"</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/atualizacao-dos-arquivos-configini)
3. [<span style="text-decoration: underline;">Atualização dos arquivos "Altver.rtf"</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/atualizacao-dos-arquivos-altverrtf)
4. [<span style="text-decoration: underline;">Solicitar a inclusão do Branch da versão no main</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/solicitar-a-inclusao-do-branch-da-versao-no-main)
5. [<span style="text-decoration: underline;">Geração dos executáveis das versões</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/geracao-de-executaveis-das-versoes)
6. [Validação e assinatura dos executáveis](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/validacao-e-assinatura-dos-executaveis)
7. [Geração das Customizações (DLLs) para liberação das versões](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/geracao-de-customizacoes-dlls-para-liberacao-das-versoes)
8. [Geração das pastas com as novas versões](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/geracao-das-pastas-com-as-novas-versoes)
9. [Publicação dos executáveis e instaladores](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/publicacao-dos-executaveis-e-instaladores)
10. [Finalização do fechamento do Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/finalizacao-do-fechamento-do-branch-da-versao)
11. <span style="text-decoration: underline;">[Criação de novos casos para o Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/criando-novos-casos-para-branch-de-versao-e-versionamento-dos-modulos-casos-pai)</span>
12. [Criação do repositório do Branch de Versão no Azure](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/criacao-do-repositorio-do-branch-de-versao-no-azure)
13. <span style="text-decoration: underline;">[Publicação do novo Branch da Versão para a equipe](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/publicacao-do-novo-branch-da-versao-para-a-equipe-de-desenvolvimento-e-qualidade)</span>

---

##### **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](https://wiki.supersoft.com.br/books/beta-gerenciamento-do-branch-de-versao/page/criando-novos-casos-para-branch-de-versao-e-versionamento-dos-modulos-casos-pai), será necessário realizar um "New Branch" no Azure.

<p class="callout warning">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.</p>

O repositório do *Branch* da Versão deverá ser criado dentro do repositório [https://dev.azure.com/SuperSoftDelphi/\_git/SistemaERPFISCO](https://SuperSoftDelphi@dev.azure.com/SuperSoftDelphi/SistemaERPFISCO/_git/SistemaERPFISCO)

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

Em Name:

<p class="callout info">Número do *Branch* da Versão+Caso+Número do caso no mantis. Exemplo: "167-Caso-0053630"</p>

Em Base on:

<p class="callout info">Seguir sempre o padrão deixando em "main"</p>

Após criar o Branch ir em Branches -&gt; 3 pontinhos -&gt; Branch policies

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/image.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/image.png)

<p class="callout info">Acessar a aba Policies deixar essa configuração padrão</p>

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/f3ximage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/f3ximage.png)

<p class="callout info">Na aba Security, deixar como padrão:</p>

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/nkXimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/nkXimage.png)

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

Após a [<span style="text-decoration: underline;">liberação e fechamento</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/inicio-do-fechamento-do-branch-da-versao) 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:

<p class="callout info">**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".  
</p>

[![imagem_1.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-1.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-1.png)

[![imagem_2.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-2.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-2.png)

Após criar o caso, relacioná-lo ao caso <span style="text-decoration: underline;">[0044448 - Gerenciamento das Versões Correntes](https://mantis.supersoft.com.br/view.php?id=44448 "0044448 - Gerenciamento das Versões Correntes")</span>:

[![imagem_5.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-5.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-5.png)

Após a [<span style="text-decoration: underline;">criação do caso do Branch da Versão </span>no Azure ](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/criacao-do-repositorio-do-branch-de-versao-no-azure "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](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-3.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-3.png)

[![imagem_4.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-4.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/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:

<p class="callout info">**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".  
</p>

[![imagem_6.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-6.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-6.png)

Após a abertura dos casos, também relacioná-lo ao caso <span style="text-decoration: underline;">[0044448 - Gerenciamento das Versões Correntes ](https://mantis.supersoft.com.br/desenvol/view.php?id=44448) </span>e também ao Branch atual de versões:

[![imagem_7.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-7.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-7.png)

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

<p class="callout warning">**Processo feito pelo Desenvolvimento**</p>

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:

<p class="callout info">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](https://dev.azure.com/SuperSoftDelphi/SistemaERPFISCO/_git/SistemaERPFISCO?version=GB169-Caso-0053778)  
Favor utilizar esse *BRANCH* a partir de hoje.  
  
Obrigado!</p>

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

Após o caso do *Branch* da Versão ter sido <span style="text-decoration: underline;">[criado no Mantis](https://wiki.supersoft.com.br/books/beta-gerenciamento-do-branch-de-versao/page/criando-novos-casos-para-branch-de-versao-e-versionamento-dos-modulos-casos-pai)</span>, será necessário realizar um "*<span style="text-decoration: underline;">[Copy to](https://wiki.supersoft.com.br/books/svn-basico/page/copy-to)</span>*" no SVN, copiando o *Trunk* (<span style="text-decoration: underline;">[https://svn.supersoft.com.br/svn/desenvolvimento/trunk/CodigoBaseSkin](https://svn.supersoft.com.br/svn/desenvolvimento/trunk/CodigoBaseSkin)</span>) para um novo repositório que será criado para o *Branch* da Versão.

<p class="callout warning">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.</p>

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

ERP:  
([<span style="text-decoration: underline;">https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP</span>)](https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/042-Caso-0044323)

Fisco:  
(<span style="text-decoration: underline;">[https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/Fisco](https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/Fisco))</span>

e deverá seguir o modelo:

<p class="callout info">Número do *Branch* da Versão+Caso+Número do caso no mantis. Exemplo: "042-Caso-0044323"</p>

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

<span style="text-decoration: underline;">[https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/042-Caso-0044323](https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/042-Caso-0044323).  
</span>  
Após inserir o caminho de repositório, uma tela de mensagem de *log* será aberta, e deverá seguir o modelo:

<p class="callout info">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"</p>

<p class="callout success">Após a realização de todos os passos, o resultado final deverá ser semelhante a: </p>

[![image-1616422198821.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/image-1616422198821.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/image-1616422198821.png)

# Manutenção do branch de versões

Descrição dos processos de manutenção do branch de versões. Processos que serão realizados após a abertura da versão corrente até o fechamento da mesma.

# Definição do Processo

##### **Resumo do processo**

Após a <span style="text-decoration: underline;">[abertura](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes)</span> de um novo Branch de Versão, durante a "vida útil" do *Branch*, ou seja, até que ele seja <span style="text-decoration: underline;">[liberado e fechado](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/finalizacao-do-fechamento-do-branch-da-versao)</span> será necessário realizar algumas rotinas de manutenção para manter o *Branch* sempre atualizado e evitar erros na hora da liberação da versão.

---

##### **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**

- Vínculo dos casos de versionamento dos módulos (casos pai) com o caso do Branch da Versão
- Manter o repositório do Branch da Versão atualizado no SVN

---

##### **Ponto inicial do processo**

Inicia-se logo após a <span style="text-decoration: underline;">[abertura](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes)</span> do Branch da Versão.

---

##### **Ponto final do processo**

Deverá ser realizado diariamente até o <span style="text-decoration: underline;">[fechamento e liberação](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/finalizacao-do-fechamento-do-branch-da-versao)</span> do Branch da Versão.

---

##### **Resultado esperado**

Manter o Branch da Versão atualizado tanto no Mantis quanto no SVN, facilitando para a equipe saber em tempo real quais casos e versões estão relacionados ao mesmo.

# Etapas de manutenção do Branch da Versão

Após a <span style="text-decoration: underline;">[abertura](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes)</span> de um novo Branch de Versão, durante a "vida útil" do Branch, ou seja, até que ele seja [<span style="text-decoration: underline;">liberado e fechado</span>](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/liberacao-e-fechamento-do-branch-de-versoes) será necessário realizar algumas rotinas de manutenção para manter o Branch sempre atualizado e evitar erros na hora da liberação da versão.

**No mantis,** conforme os casos de erros/implementações forem relacionados ao branch de versões, deve-se verificar se o caso da versão do respectivo módulo que será liberado com o caso tratado já se encontra relacionado no branch de versões, caso não esteja, então deve-se relacionar.

**No azure** o branch da versão está sempre atualizado, pois nenhum PR deve ser feito diretamente na main. Atualmente a equipe Fisco e ERP utilizam o mesmo branch de versão que é gerenciado pela equipe ERP.

<s>**No SVN,** a única rotina que precisará ser feita é a realização de um <span style="text-decoration: underline;">[update](https://wiki.supersoft.com.br/books/svn-basico/page/update),</span> <span style="text-decoration: underline;">[merge](https://wiki.supersoft.com.br/books/svn-basico/page/merge-comum-sem-conflitos)</span> e <span style="text-decoration: underline;">[commit](https://wiki.supersoft.com.br/books/svn-basico/page/commit)</span> diário, de preferência no início do dia, para que o Branch da Versão sempre fique atualizado em relação ao trunk.</s>

# Fechamento do branch e liberação de versões

Descrição dos processos à serem realizados para realizar a liberação e fechamento do Branch da Versão corrente.

# Decisão do fechamento do Branch da Versão

<p class="callout warning">**Processo feito pela qualidade**</p>

Após ser definido que o *Branch* da Versão será fechado, deve-se avisar à equipe de Desenvolvimento e Qualidade para que não subam mais nenhum tratamento e/ou façam alterações no Branch. Para isso, no *Rocket Chat* (ferramenta utilizado internamente para comunicação) no canal "Equipe.Delphi.ERP" deve ser enviada uma mensagem padrão, conforme exemplo abaixo:

<p class="callout success">  
"Pessoal,  
  
Por favor, não subir mais nenhum tratamento para o *Branch* XXX.  
Irei começar a fazer a liberação dos módulos.  
  
Obrigado!"  
  
</p>

Após comunicar a equipe sobre o fechamento da versão, confirmar no Mantis se todos os casos vinculados ao *Branch* foram realizados os testes e revisão de testes e se estão com o status "Aguardando liberação de versão". Confirmar também se todos os casos do versionamento dos módulos que serão liberados foram vinculados ao caso do Branch, conforme exemplo abaixo:

[![1.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/1.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/1.jpg)

O quadro em <span style="color: #000000;">verde </span>está demonstrando todos os casos de versionamento de módulos e que serão liberados no *Branch* da Versão. Neste exemplo, no [<span style="text-decoration: underline;">*Branch* 041</span>](https://mantis.supersoft.com.br/view.php?id=44219) serão liberados os módulos Vendas e Compras.

No quadro em <span style="color: #000000;">vermelho </span>estão todos os casos de erros, solicitações ou melhorias que estão relacionados ao Branch 041 e que serão entregues através dos módulos de Vendas e Compras.

<p class="callout info">Os casos de versionamento de módulos que serão relacionados ao *Branch* da Versão dependerão dos casos de erro, solicitação ou melhorias que serão liberados. Se no *Branch* houver apenas casos do Financeiro, por exemplo, não há necessidade de liberação dos demais módulos, a não ser que para correção de algum destes casos seja necessária alguma correção em uma unit comum, nesta situação precisarão ser liberados todos os módulos que fazem uso da unit em questão.</p>

<p class="callout info">Casos de versionamento de DLLs também devem ser vinculados ao caso do *Branch* da Versão.</p>

# Atualização dos arquivos "Config.ini"

<p class="callout warning">**Processo feito pela qualidade em um computador que possui o Delphi**</p>

Os arquivos "*Config*.*ini*" são os arquivos onde informamos o número do caso pai (caso de versionamento das versões), número da versão e data de liberação dos módulos, portanto é necessário atualizar estes arquivos à cada liberação de versão.

Antes de começar a atualizar estes arquivos precisaremos selecionar o Branch da versão no Azure e em seguida siga os passos abaixo para atualização dos arquivos:

Na pasta do *Branch* da Versão (Exemplo "C:\\Codigo Fonte"), acessar "*WorkingCopies* &gt; Sistemas", conforme exemplo:

[![2.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/scaled-1680-/2.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/2.jpg)

No quadro "Pesquisar Sistemas" digitar "*config.ini*" para que sejam filtrados apenas os arquivos que contenham esse nome e extensão:

[![14.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/14.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/14.jpg)

[![15.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/15.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/15.jpg)

Selecionar os arquivos de todos os módulos que serão liberados, clicar com o botão direito do mouse e em seguida clicar em "*Edit with* *Notepad*++":

<p class="callout info">Neste exemplo faremos a liberação do [*Branch* 041](https://mantis.supersoft.com.br/desenvol/view.php?id=44219), portanto serão liberados apenas os módulos de Compras, Vendas e NFe.</p>

[![16.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/16.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/16.jpg)

Os arquivos serão abertos com o aplicativo do *Notepad*++, conforme demonstrado abaixo. Em todos os arquivos será necessário atualizar os campos "CasoPai", "DataLiberacao", "Versao1" e "Versao2". Após atualizar os campos clicar no botão "Salvar":

##### **Caso Pai**

Caso do versionamento do módulo, no *Branch* 41 o caso pai do módulo de Vendas é o 0044227, por exemplo.

##### **Data Liberação**

Data que serão compilados os executáveis para liberação.

##### **Versao1**

Preencher com o número da versão anterior ao "ponto". No exemplo do Branch 041 será liberada a versão 6.555 do Vendas, portanto o campo "Versao1" deve ser preenchido com "6".

##### **Versao2**

Preencher com os números após o ponto. No exemplo da versão 6.555, preencher o campo "Versao2" com "555".

[![17.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/17.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/17.jpg)

<p class="callout warning">Atenção: Somente para o arquivo do módulo NE é necessário preencher também os campos "Versao1Principal" e "Versao2Principal".</p>

O módulo NE utiliza as mesmas configurações do projeto do Vendas, portanto o arquivo "*Config.ini*" do NE deve apontar qual a versão principal do módulo do Vendas que ele estará vinculado.  
No exemplo da liberação do *Branch* 41, que iremos liberar a versão 6.555 do Vendas, os campos deverão ser preenchidos da seguinte forma:

[![18.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/18.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/18.jpg)

# Atualização dos arquivos Altver.rtf

<p class="callout warning">**Processo feito pela qualidade em um computador que possui o Delphi**</p>

##### **O que são os arquivos "Altver"?**

Os arquivos "Altver" contém as informações do que será liberado em cada versão. Existem versões que apenas trataram ajustes/erros no sistema e outras versões que além de correções de erro, liberam também alguma melhoria do sistema, novo recurso, etc, então os mesmos precisarão ser preenchidos de acordo com essas informações.

##### **Geração dos arquivos:**

O arquivo deverá ser criado **sempre** através do *WordPad*, devendo conter o número da versão que será liberada e quais as implementações da versão, conforme exemplos abaixo:

<p class="callout info">Exemplo de arquivo Altver onde foram realizados apenas ajustes ou correções de erro no sistema:</p>

[![19.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/19.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/19.jpg)

<p class="callout info">Exemplo de arquivo Altver onde houveram melhorias no sistema:</p>

[![20.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/20.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/20.jpg)

<p class="callout warning">Para o módulo NFE não é necessário criação do arquivo Altver, pois utilizará o mesmo arquivo que o módulo de Vendas.</p>

#### **Atualização dos arquivos "Altver.rft" no SVN e módulos**

Após gerar os arquivos Altver de todos os módulos que serão liberados, será necessário atualizá-los no SVN e no projeto de cada módulo.

##### **Atualização dos arquivos Altver no SVN**

Para isso, acessar a pasta do Branch da Versão e em seguida "WorkingCopies &gt; Sistemas &gt; Vendas", por exemplo. Deverá eliminar o arquivo "Altver.rtf" já existente e substituir pelo novo arquivo gerado, mantendo a nomenclatura "Altver.rtf":

[![1.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/scaled-1680-/3jU1.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/3jU1.jpg)

<p class="callout warning">Esse processo deverá ser repetido para todos os módulos que serão liberados, exceto o módulo NFE, que utilizará o mesmo arquivo que o módulo Vendas.   
O arquivo "AltverNE.rtf" <span style="text-decoration: underline;">**não**</span> deve ser excluído ou substituído.</p>

#### **Atualização dos arquivos Altver nos módulos (projetos)**

Após fazer a substituição do arquivo "Altver.rtf" da pasta de cada um dos módulos que serão liberados, será necessário alterar o projeto de cada um dos módulos para que ele passe a "enxergar" o novo arquivo adicionado. Para isso deveremos acessar a pasta "project" e executar o programa "VD.dproj":

[![2.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/scaled-1680-/cEJ2.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/cEJ2.jpg)

O projeto do módulo que executou, "VD.dproj", "CC.dproj", "FN.dproj" (...) será aberto aberto no Delphi:

[![image-1610106069108.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/image-1610106069108.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/image-1610106069108.png)

Na tela do Delphi, utilizar o comando "CTRL + F12" para abrir a tela de pesquisa de units "Search for units". No campo de pesquisa digite "altver", em seguida selecione a unit "ALTVER1.pas" e clique em "OK". Será aberta a unit "ALTVER1" em uma nova aba:

[![26.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/26.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/26.jpg)

[![27.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/27.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/27.jpg)

Clicar na aba "VD", pesquisar novamente por "altver" e agora selecionar a primeira opção, "AltVer.pas". Clicar em "OK" e será aberta uma nova aba com a unit "AltVer":

[![28.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/28.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/28.jpg)

[![29.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/29.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/29.jpg)

<p class="callout warning">A ordem de abertura das units sempre devem seguir o padrão "ALTVER1.pas" e depois "AltVer.pas" por motivos relacionados ao código(herança).</p>

Na unit "AltVer" aperte a tecla F12 do teclado e será aberta a tela "Correções e Implementações da Versão Corrente":

<p class="callout info">Observar que por enquanto o número da versão e as implementações não foram atualizadas. </p>

[![30.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/30.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/30.jpg)

Clicar com o mouse dentro do quadro "Correções e Implementações da Versão Corrente" para selecioná-lo e em seguida, nas propriedades do canto inferior esquerdo da tela, clicar no DLG da propriedade "LoadRTF". Será aberta uma tela para buscar o arquivo à ser importado:

[![31.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/31.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/31.jpg)

Na tela "Selecione um RTF", certifique-se de que está dentro da pasta do projeto correto, ou seja, do mesmo projeto que estiver fazendo as alterações no Delphi e então selecione o arquivo "Altver.rtf" e clique em "Abrir".

[![32.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/32.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/32.jpg)

Após importar o novo arquivo "Altver.rft", verifique que no quadro "Correções e Implementações da Versão Corrente" o número da versão e o conteúdo serão atualizados conforme o arquivo importado. Clique no botão "Salve All (Shift+Ctrl+S)" para salvar o projeto e em seguida pode fechar o Delphi:

[![33.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/33.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/33.jpg)

O altver do NE é atualizado dentro do projeto do VD pela parte lateral "PagesControl1" onde tem os dois altver "TS\_ALTVER" e "TS\_ALTVERNE":

[![Clipboard - 19 de Julho de 2023 às 08_49.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-07/scaled-1680-/clipboard-19-de-julho-de-2023-as-08-49.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-07/clipboard-19-de-julho-de-2023-as-08-49.png)

É só clicar no "TS\_ALTVERNE" e selecionar o arquivo AltverNE.rtf conforme feito nos demais projetos:

[![Clipboard - 19 de Julho de 2023 às 08_50.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-07/scaled-1680-/clipboard-19-de-julho-de-2023-as-08-50.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-07/clipboard-19-de-julho-de-2023-as-08-50.png)

# Solicitar a inclusão do Branch da versão no main

<p class="callout warning">**Processo feito pela qualidade**</p>

Após concluir a revisão de teste de todos os casos que foram incluídos no *branch* da versão e a atualização dos arquivos "config.ini" e "altver.rtf", uma anotação solicitando a inclusão do *branch* da versão no *main* deverá ser enviada para o desenvolvedor responsável no Mantis (branch da versão atual). Informando os módulos que foram alterados e os casos que foram tratados.

A anotação de solicitação deverá seguir o seguinte padrão:

[![imagem_16.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-16.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-16.png)

<p class="callout info">A anotação não só ajuda na conferência dos arquivos altver e config.ini antes do *commit*, como facilita muito a busca por casos quando necessário buscar um tratamento de uma determinada versão.</p>

# Geração de executáveis das versões

<p class="callout warning">**Processo feito pelo desenvolvimento**</p>

### **Compilando os executáveis**

Para gerar os executáveis que faremos a liberação, deveremos acessar a pasta do projeto dentro do main, exemplo (C:\\Codigo Fonte\\CodigoBaseSkin\\WorkingCopies\\Sistemas\\SSVendas\\project) e em seguida abrir o arquivo ".dproj":

[![1.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/scaled-1680-/1.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-02/1.jpg)

Será aberto o Delphi, digitar "*Shift*+F9" para abrir a tela "Configurações de Compilação". Selecione qual a Empresa (ambiente) será gerado o executável e confira se os campos "Caso Pai", "Data de liberação" e "Versão" estão corretos. No quadro "Diretório" selecione onde o executável deverá ser salvo e então clique em "OK (F5)":

[![39.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/39.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/39.jpg)

Será exibida a tela "*Information*". Clique em "Yes to All" e em seguida em "OK":

[![40.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/40.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/40.jpg)[![41.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/41.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/41.jpg)

Será iniciada a compilação do executável:

[![42.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/42.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/42.jpg)

Quando a compilação for finalizada, no canto inferior esquerdo será exibida a mensagem "*Sucess*" e o tempo de compilação:

[![43.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/43.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/43.jpg)

Verifique que o executável terá sido gerado dentro do diretório indicado anteriormente. Confirmar se o executável foi gerado corretamente de acordo com as opções selecionadas, observando as informações de "Data de modificação", "Marcas Registradas", "Nome do produto" e "Versão do produto":

[![44.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/44.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/44.jpg)

Até aqui fizemos a compilação do executável do Vendas apenas para o ambiente Nooven, então precisaremos compilá-lo ainda para o ambiente SuperSoft e depois compilar os executáveis das demais versões que serão liberadas. Para não perder os executáveis que já geramos e ir fazendo a separação, é aconselhável criar os diretórios "SS", "NV" e "EC" e ir alocando os executáveis gerados em cada uma dessas pastas, conforme o ambiente do executável:

[![45.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/45.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/45.jpg)

Recortar o executável e colá-lo dentro da pasta do ambiente correspondente. Neste exemplo, "NV":

[![46.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/46.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/46.jpg)

Agora compilaremos o executável do Vendas para o ambiente Supersoft. Voltar no Delphi, digitar "*Shift*+F9", selecionar a empresa "SuperSoft" e clicar em "OK (F5)" e seguir os passos:

[![47.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/47.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/47.jpg)

[![49.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/49.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/49.jpg)[![50.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/50.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/50.jpg)

[![48.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/48.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/48.jpg)

[![43.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/43.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/43.jpg)

Observar que agora terá sido gerado o executável do ambiente "SuperSoft". Recortar e colar o executável dentro da pasta do diretório correspondente:

[![51.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/51.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/51.jpg)

<p class="callout info">Os passos acima deverão ser realizados para todos os executáveis que serão liberados.</p>

<p class="callout info">O módulo NE estará dentro do projeto do Vendas, para compilá-lo deverá executar o arquivo "NE.dproj".</p>

<p class="callout warning">Para os módulos "NE" e "FN" é necessário compilar também os executáveis para o ambiente E-Contab.</p>

# Validação e assinatura dos executáveis

<p class="callout warning">**Processo feito pela qualidade**</p>

##### **Conferência dos executáveis**

Após todos os executáveis terem sido <span style="text-decoration: underline;">[compilados](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/page/geracao-de-executaveis-das-versoes),</span> o desenvolvedor responsável irá passar o caminho que foi gerado os executáveis e customizações vinculados ao branch.

Copie as pastas referentes à cada ambiente para que possam ser conferidos.

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/LKWimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/LKWimage.png)

---

##### **Validação das informações na abertura dos executáveis**

Copiar os executáveis para o local da instalação dos sistemas SuperSoft e executá-lo para abertura do sistema:

[![54.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/54.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/54.jpg)

Verifique se a versão que será exibida e se nome, ambiente e versão do sistema estarão corretos:

[![55.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/55.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/55.jpg)

Após atualizar o sistema, acessar o menu "Ajuda &gt; Sobre" e verificar se o número da versão, data da liberação e número do caso pai estarão corretos (dados do arquivo "<span style="text-decoration: underline;">[Config.ini](https://wiki.supersoft.com.br/books/beta-fechamento-do-branch-e-liberacao-de-versoes-erp/page/atualizacao-dos-arquivos-configini)</span>"):

[![56.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/56.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/56.jpg)

Em seguida acesse o menu "Ajuda &gt; Correções e Implementações da Versão" e confira se a versão e as implementações/melhorias estão corretas (dados do arquivo "<span style="text-decoration: underline;">[Altver.rtf](https://wiki.supersoft.com.br/books/beta-fechamento-do-branch-e-liberacao-de-versoes-erp/page/geracao-do-arquivo-altverrft)</span>"):

[![57.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/57.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/57.jpg)

---

##### **Validação das informações do executável (propriedades)**

Clique com o botão direito do mouse no executável e em seguida clique me "Propriedades". Será aberta a tela com as propriedades do executável:

[![58.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/58.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/58.jpg)

Clique na aba "Detalhes" e confira se os dados "Descrição do arquivo", "Versão do arquivo", "Nome do produto", "Versão do produto", "Direitos autorais" e "Marcas registradas" estarão corretos:

<p class="callout info">Exemplo de dados das propriedades do módulo Vendas do ambiente Supersoft.</p>

[![60.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/60.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/60.jpg)

<p class="callout info">Exemplo de dados das propriedades do módulo Vendas do ambiente Nooven.</p>

[![61.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/61.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/61.jpg)

[![62.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/62.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/62.jpg)

<p class="callout info">Os passos acima deverão ser realizados para todos os módulos que serão liberados e para todos os ambientes.</p>


---

##### **Assinando os executáveis**

Após ter conferido todos os executáveis será necessário assiná-los. Para isso precisará ter em mãos o certificado digital da SuperSoft, (atualmente a assinatura dos exes está sendo realizado pelo Filipe.Erbetta).

Com o certificado já plugado na máquina, execute o programa "Assinador de Arquivos", disponível no caminho (\\\\ss\\qualidade\\Compilador\\Assinador de exe):

[![67.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/67.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/67.jpg)

Clique no botão "*Add* Arquivos" e será aberta a tela "Arquivos Executáveis". Selecione todos os executáveis e clique em "Abrir":

[![68.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/68.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/68.jpg)

Todos os executáveis que foram selecionados serão listados, então clique no botão "Assinar" para iniciar a assinatura:

[![69.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/69.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/69.jpg)

O sistema irá solicitar a senha do certificado para que os executáveis sejam assinados. Preencher a senha:

[![70.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/70.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/70.jpg)

Após assinar os executáveis, o programa "Assinador de arquivos" adicionará um "OK" na frente de cada um dos executáveis selecionados e que foram assinados:

[![71.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/71.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/71.jpg)

Para conferir se todos os executáveis foram assinados corretamente, verifique se nas "Propriedades" de cada um dos executáveis foi adicionada a aba "Assinaturas Digitais":

[![72.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/72.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/72.jpg)

# Geração de Customizações (DLLs) para liberação das versões

<p class="callout warning">**Processo feito pelo desenvolvimento**</p>

Atualmente a Custom está sendo gerada conforme o passo a passo do Azure

**[https://dev.azure.com/SuperSoftDelphi/CustomDLL/\_wiki/wikis/CustomDLL.wiki/1/Procedimento-de-Cria%C3%A7%C3%A3o-e-Configura%C3%A7%C3%A3o-de-Reposit%C3%B3rio-de-Customiza%C3%A7%C3%A3o](https://dev.azure.com/SuperSoftDelphi/CustomDLL/_wiki/wikis/CustomDLL.wiki/1/Procedimento-de-Cria%C3%A7%C3%A3o-e-Configura%C3%A7%C3%A3o-de-Reposit%C3%B3rio-de-Customiza%C3%A7%C3%A3o)**

#### **Compilando uma Custom SVN (extinto)**

Para a compilação de uma Custom será necessário baixar a pasta específica dela que fica em "https://svn.supersoft.com.br/svn/desenvolvimento/outros/DLLs/EmFireDac Skin" com o nome do módulo + o nome do cliente, exemplo "CustomVDOasis":

[![image-1684245788082.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684245788082.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684245788082.png)

Para compilar será necessário copiar essa pasta do EmFireDac Skin para o trunk -&gt; CodigoBaseSkin -&gt; WorkingCopies -&gt; Sistemas, e colar:

[![image-1684245947113.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684245947113.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684245947113.png)

Após isso abrir a CustomVD.dproj (sempre será o nome do módulo da custom que está sendo compilada) que está dentro da Custom -&gt; Project:

[![image-1684247717109.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684247717109.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684247717109.png)

##### **Atualização da versão dentro da Custom**

Ao abrir, antes de compilar será necessário ajustar o número da verão em da custom, ir em "Project -&gt; Options -&gt; Version Info" e corrigir para o número da versão que será liberada, e clicar em OK:

[![image-1684247625792.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684247625792.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684247625792.png)

Na pagina inicial, abaixar a barra e corrigir o número da versão e conferir o nome da Custom:

[![image-1684247840484.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684247840484.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684247840484.png)

Após isso crie uma pasta em: \\\\ss\\qualidade\\LIBERADO\_DLLs + o nome do cliente + o nome do projeto da custom, exemplo: "\\\\ss\\qualidade\\LIBERADO\_DLLs\\Oasis\\CustomVD"

##### **Pasta das Customizações**

Crie uma pasta com o número do caso + versão + data de liberação, assim sempre terá as versão antigas salvas

[![image-1684254498813.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684254498813.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684254498813.png)

Antes de compilar será necessário ajustar o caminho para salvar a dll em "Project -&gt; Options -&gt; Delphi Compiler -&gt; Output directory" e clicar em OK:

[![image-1684248169511.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684248169511.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684248169511.png)

Salve o projeto:

[![image-1684248319119.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684248319119.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684248319119.png)

##### **Compilando a Custom**

Digitar "*Shift*+F9" para iniciar o processo de compilação, será exibido no canto inferior esquerdo será exibida a mensagem "*Sucess*" e o tempo de compilação:[![image-1684248344813.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684248344813.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684248344813.png)

##### **Commit da Custom**

Depois acesse novamente a pasta em que foi compilado o projeto e copie os arquivos .dpr e .dproj:

[![image-1684249123487.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684249123487.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684249123487.png)

E cole (clique em SIM para substituir) dentro da pasta "EmFireDac Skin" -&gt; nome do projeto -&gt; Project:

[![image-1684249185806.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684249185806.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684249185806.png)

Após isso é só clicar com o botão direito na tela TortoiseSVN -&gt; Commit, como padrão sempre usamos o resumo do caso:

[![image-1684249350744.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684249350744.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684249350744.png)

Depois ao dar o showlog na pasta será possível ver a alteração na versão da Custom:

[![image-1684249438175.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684249438175.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684249438175.png)

---

#### **Validação das informações das Custom**

Após a custom ser compilada será necessário conferir se foi gerada a versão correta, acesse o caminho em que foi compilada:

[![image-1684254657480.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684254657480.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684254657480.png)

Selecione ela, clique com o botão direito e vá em "Propriedades" -&gt; "Detalhes" e veja se a versão do arquivo está correta:

[![image-1684249706458.png](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/scaled-1680-/image-1684249706458.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2023-05/image-1684249706458.png)

# Geração das pastas com as novas versões

<p class="callout warning">**Processo feito pela qualidade**</p>

---

##### **Publicação no diretório da Qualidade Assinados Temp**

É necessário copiar os executáveis da versão (assinados) para para cada ambiente que será liberado no diretório: \\\\ss\\qualidade\\LIBERADO\_VERSOES\_EXECUTAVEIS\\Assinados\_Temp

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/cm2image.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/cm2image.png)

Nesse exemplo será liberado o FN e NE do ambiente eContab:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/k3kimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/k3kimage.png)

Também é necessário substituir os arquivos altver.rtf para os novos do branch atual:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/eC6image.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/eC6image.png)

---

##### **Publicação das Versões liberadas no diretório da Qualidade** 

Primeiramente deverá ser criada uma pasta para cada módulo que será liberado, seguindo o padrão "Número do caso pai\_Versão\_Número da Versão\_liberado\_data da liberação", conforme exemplo: "0053706\_Versão\_5.190\_liberado\_07-04-2026". Dentro dessa pasta deverão ser criadas uma pasta para cada ambiente que será liberado:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/oYlimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/oYlimage.png)

No exemplo do módulo de Compras, uma pasta "SS" e outra pasta "NV" e o arquivo "Altver" referente ao módulo também deverá ser incluído nesta pasta, com o padrão "Altver+módulo (neste exemplo, AltverCC)":

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/zG9image.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/zG9image.png)

Dentro da pasta de cada ambiente deverá ser salvo o executável (já conferido e assinado) correspondente:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/ONfimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/ONfimage.png)

<p class="callout info">Este processo deverá ser realizado para todos os módulos que serão liberados.</p>

Após os passos acima serem realizados, copiar a pasta de cada um dos módulos que foram criadas, acessar o caminho "\\\\ss\\qualidade\\LIBERADO\_VERSOES\_EXECUTAVEIS" e colá-las dentro das pastas dos respectivos módulos:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/ez4image.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/ez4image.png)

---

##### **Publicação das Customizações no diretório da Qualidade** 

Será necessário copiar a pasta as custom que foram geradas pelo desenvolvimento para o caminho "\\\\ss\\Qualidade\\LIBERADO\_DLLs" + Cliente + Projeto:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/o3bimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/o3bimage.png)

Criar uma pasta para cada Custom que será liberada, seguindo o padrão "Número do caso pai\_Versão\_Número da Versão\_liberado\_data da liberação", conforme exemplo: "0053725\_Versão\_5.00\_liberado\_07-04-2026"

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/tHnimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/tHnimage.png)

---

##### **Publicação das Versões Liberadas no diretório Sistemas** 

Será necessário disponibilizar essas pastas também no diretório \\\\ss\\sistemas\\VERSOES LIBERADAS\\01. Atualizações + sigla do Módulo:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/zNeimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/zNeimage.png)

---

##### **Publicação das Customizações no diretório Sistemas** 

Será necessário disponibilizar essas pastas também no diretório \\\\ss\\sistemas\\DLLS\_NOVO\_SKIN + Cliente + Projeto:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/Blaimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/Blaimage.png)

# Publicação dos executáveis e instaladores

<p class="callout warning">**Processo feito pela qualidade**</p>

#### **Publicação no Mantis**

No Mantis a publicação dos módulos liberados deverá ser apontada em cada um dos casos pai (casos de versionamento dos módulos) que estão vinculados ao Branch que está sendo liberado. Seguindo o padrão de mensagem:

> \*Adicionar usuários do Suporte, Projetos, Comercial e Qualidade na anotação
> 
> \[b\]COMPRAS 5.190\[/b\] (Módulo + Número da versão)  
> Data da publicação: 07/04/2026  
> Ambientes: SuperSoft / Nooven (Adicionar E-Contab quando for liberação dos módulos NE e FN).
> 
> VERSÃO LIBERADA EM: \\\\ss\\sistemas\\VERSOES LIBERADAS\\01. Atualizações\\CC (incluir a sigla do módulo no final)
> 
> Suporte, Projetos e Comercial,
> 
> Favor verificar os casos vinculados a versão e atualizar os clientes que necessitam da atualização.
> 
> Obrigada.

Abaixo segue exemplo de preenchimento no Mantis (caso [53706](https://mantis.supersoft.com.br/view.php?id=53706 "53706")):

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/bQZimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/bQZimage.png)

<p class="callout info">Quando houver casos onde foram criadas ou alteradas DLLs de algum cliente, é necessário vincular o caso de versionamento da DLL ao caso do Branch e seguir o mesmo procedimento de publicação para o caso de versionamento da DLL. Abaixo exemplo da mensagem de publicação em casos de DLL:</p>

> \*Adicionar usuários do Suporte, Projetos, Comercial e Qualidade na anotação  
>   
> CustomXX Nome\_do\_Cliente (XX = módulo, exemplo CustomVD, CustomFN, CustomCE, etc).  
> Versão: 5.00 (sempre incremental a partir de 5.00)  
> Data de liberação: DD/MM/AAAA  
>   
> Liberar em conjunto com: SSmodulo XX.XXX (Módulo e versão do módulo que deverá ser atualizado em conjunto).  
>   
> DLL disponível em:
> 
> \- \\\\ss\\Sistemas\\DLLS\_NOVO\_SKIN
> 
> Qualquer duvida estou a disposição.
> 
> Obrigada.

Abaixo segue exemplo de preenchimento no Mantis (caso [53725](https://mantis.supersoft.com.br/view.php?id=53725 "53725")):

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/aEWimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/aEWimage.png)

---

#### **Publicação nos comunicadores (Atualmente pelo Rocket Chat)**

No comunicador que estiver sendo utilizado pelos setores (atualmente é o Rocket Chat, no canal "Entrega\_de\_Versoes\_ERP"), deverá ser enviada uma mensagem avisando os usuários sobre a liberação das versões e relacionando os casos que estão sendo liberados. Abaixo segue exemplo do padrão da mensagem à ser seguido:

> <div>Suporte, Projetos e Comercial</div><div>  
> </div><div>Seguem as versões e casos liberados na data de 07/04/2026.</div><div>  
> </div><div>**0053705: BRANCH DE VERSÕES 168 - GERENCIAMENTO DE CASOS**</div><div>  
> </div><div>0053706: Versão 5.190 - COMPRAS</div>- 0053379: OREGON (NV) Elaine: Inconsistência ao tentar gravar NR de Importação
> - 0053477: WAYBOR (SS/NV) - Ao realizar uma NR, a aba “Duplicatas” não é exibida para vínculo com o FN.
> - 0053586: Anhembi - (Jonathan) - exportação de notificações não são levadas para fiscal (2.556 352)
> - 0053243: TALKLINK (SS) - Ao realizar a importação de NR, sistema não cálculo base de PIS e COFINS para produtos e monofasicos.
> - 0053313: ALEXANDRE ALTOMAR (NV) Carolini: NFE com valor do ICMS, porém, sem Base de Cálculo e sem Alíquota do ICMS
> 
> <div>0053708: Versão 3.951 - FINANCEIRO</div>- 0053723: SM ELEVADORES (SS/NV) Compilar DLL de gestão de contratos
> - 0053643: QUANTA (SS/NV) Karina - Inconsistência ao selecionar tipo de movimento duplicata descontada
> - 0053427: ACITEC SOLUCOES EM TRANSPORTES VERTICAIS(NV-SS): Sistema não permite visualizar e nem salvar o boleto bancário do Banco Inter.
> 
> <div>0053731: CustomCP - Brascar 5.00</div>- 0053198: BRASCAR (NV/SS) Julio/Marcelo - Codificação de produtos especifica conforme grupo e linha de produtos
> 
> <div>Qualquer dúvida estou a disposição.</div><div>Obrigada.</div>

---

#### **Publicação na Central de Operações**

<p class="callout warning">Para o segmento ERP os módulos liberados devem ser publicados na Central de Operações após análise com o líder do desenvolvimento e também mediante autorização do Gerente do setor de Suporte.</p>

Para publicação dos módulos na Central de Operações utilizaremos o programa "GeradorSetupVersao2" disponível em: \\\\ss\\qualidade\\FERRAMENTAS\\GeradorDeSetup2.0

O executável deverá ser buscado no caminho "\\\\ss\\qualidade\\LIBERADO\_VERSOES\_EXECUTAVEIS\\Assinados\_Temp", ao abrir o gerador de setups e clicar na opção "Utilizar diretório Assinados\_Temp?" ele vai direcionar para a pasta correta e conforme o ambiente selecionado, nesse exemplo publicaremos os eContab

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/Vhbimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/Vhbimage.png)

Selecionar os executáveis que serão publicados, conferir a data de modificação do arquivo:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/4dgimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/4dgimage.png)

 Deverá ser confirmado se os dados do executável estão corretos e em seguida clicar no botão "Publicar", conforme exemplo:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/bzVimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/bzVimage.png)

<p class="callout info">Este processo deverá ser realizado para todos os módulos e para cada um dos ambientes que será realizada a publicação na Central de Operações.</p>

Após realizar a publicação de todos os módulos e ambientes, conferir se em "\\\\ss\\Sistemas\\ASSINADOS", dentro da pasta de cada módulo e cada ambiente, se o executável e o arquivo Altver.rtf foi atualizado com a data de liberação do mesmo:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/KIeimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/KIeimage.png)

Conferir também se em "\\\\ss\\Sistemas\\INSTALADORES", dentro da pasta de cada módulo e cada ambiente, se o instalador foi gerado com a data da publicação:

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/AHTimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/AHTimage.png)

<p class="callout info">A conferência da geração dos executáveis, instaladores e dos arquivos Altver deverão ser realizadas para cada um dos ambientes publicados.</p>

---

#### **Liberação da versão na Intranet**

Para liberação das versões para o cliente é necessário acessar a [intranet](https://novaintranet.supersoft.com.br/home) e nas Ferramentas -&gt; Versões

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/BG5image.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/BG5image.png)

Clicar em "Nova Versão":

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/tsGimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/tsGimage.png)

<span style="color: rgb(0, 0, 0);">Selecionar o módulo, versão e as empresas:</span>

[![image.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/VVHimage.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/VVHimage.png)

<p class="callout warning">**Tornar a versão oficial na Central OP:** Só marcar essa opção quando for necessário disponibilizar essa versão para todos os clientes, caso contrario só de cadastrar a versão já será liberada para uso dos clientes. </p>

<p class="callout info">As versões antigas podem ser excluídas do site e manter apenas uma versão oficial na CentralOP.</p>

# Finalização do fechamento do Branch da Versão

<p class="callout warning">**Processo feito pela qualidade**</p>

Após terem sido realizadas todas as etapas anteriores, agora é necessário apenas fechar todos os casos relacionados ao Branch da Versão (caso de erro/melhoria/customizações e casos de versionamento das versões) para fechar o caso do Branch.

Para isso basta acessar cada um dos casos, começando pelos casos que foram tratados dentro do Branch da Versão atual em questão e seguir os passos abaixo:

[![imagem_8.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-8.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-8.png)

No mantis, clicar na opção "Gerenciar", depois "Gerenciar Projetos":

[![imagem_9.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-9.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-9.png)

Encontrar o módulo vinculado ao caso, nesse exemplo o SSCompras e entrar nele:

[![imagem_10.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-10.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-10.png)

Rolar a tela até a parte das "Versões" aqui será necessário alterar a versão anterior para "Liberada":

[![imagem_11.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-11.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-11.png)

[![imagem_11 a.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-11-a.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-11-a.png)

Depois no final da listagem Adicionar a nova versão:

[![imagem_12.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-12.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-12.png)

Voltar no caso que está "Aguardando Liberação de Versão" e Alterar Status para "Fechado":

[![imagem_13.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-13.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-13.png)

E selecionar a nova versão na opção "Corrigido na Versão" e "Fechar Tarefa":

[![imagem_14.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-14.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-14.png)

[![imagem_15.png](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/scaled-1680-/imagem-15.png)](https://wiki.supersoft.com.br/uploads/images/supersoft/gallery/2026-04/imagem-15.png)

Após fechar todos os casos tratados no Branch, o caso do Branch da Versão passará a demonstrar:

[![99.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/99.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/99.jpg)

<p class="callout info">Repetir o processo acima para os "casos pai (Versionamento dos módulos)" e depois fechar também o caso do Branch da Versão.</p>

Depois que todos os casos do Mantis e o Branch da Versão for fechado, no Trello mover os casos da coluna "Aguardando Liberação" para a coluna "Entregues":

[![100.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/100.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/100.jpg)

<p class="callout warning">Sempre após um Branch da Versão ser encerrado é obrigatório realizar o processo da [criação de um novo Branch da Versão](https://wiki.supersoft.com.br/books/gerenciamento-do-branch-de-versao/chapter/abertura-do-branch-de-versoes) e criação dos novos "Casos pai (Versionamento dos módulos)".</p>

# [extinto] Commit das alterações dos arquivos "Config.ini" e "Altver.rft" no SVN

Após realizar a atualização dos arquivos "<span style="text-decoration: underline;">[Config.ini](https://wiki.supersoft.com.br/books/beta-fechamento-do-branch-e-liberacao-de-versoes-erp/page/atualizacao-dos-arquivos-configini)</span>" e "<span style="text-decoration: underline;">[Altver.rft](https://wiki.supersoft.com.br/books/beta-liberacao-e-fechamento-do-branch-de-versoes-erp/page/atualizacao-dos-arquivos-altverrft-no-svn-e-modulos)</span>" é necessário *<span style="text-decoration: underline;">[commitar](https://wiki.supersoft.com.br/books/svn-%28subversion%29/page/commit)</span>* essas alterações, ou seja, subir as alterações que foram realizadas por enquanto somente em sua máquina para o código fonte do Branch da Versão.

Clique com o botão direito do *mouse* na pasta do *Branch* da Versão, exemplo "Caso-BranchVersão-0044433" e em seguida em "*SVN Commit*":

[![34.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/34.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/34.jpg)

No quadro das mensagens deverá ser incluída uma mensagem padrão, contendo o Branch da Versão que será liberado, quais casos de versões estão relacionados à ele e quem está realizando o *commit* (caso esteja utilizando por uma máquina virtual), conforme exemplo abaixo:

[![35.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/35.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/35.jpg)

No quadro "*Changes made*" deverão ser selecionados os arquivos que foram modificados e que deverão ser *commitados*:

<p class="callout warning">Deverão ser selecionados apenas os arquivos com extensões ".dfm", ".Config.ini" e ".rtf".</p>

<p class="callout info">Dica: Clique no campo "*Extension*" para que os arquivos sejam ordenados por extensão, assim facilitará selecionar somente os arquivos das extensões ".dfm", ".Config.ini" e ".rtf". </p>

[![36.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/36.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/36.jpg)

Após selecionar os arquivos que deverão ser *commitados*, clicar em "OK". Será aberta a tela abaixo para realização do *commit*, após finalizar clicar em "OK":

[![37.jpg](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/scaled-1680-/37.jpg)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-01/37.jpg)

Pronto, as alterações foram salvas e enviadas ao código fonte do Branch da Versão.

# Subprocessos Dependentes



# (extinto) Programação dos responsáveis pelo branch das versões

##### **ERP:**

**Atualizado dia: 02/03/2021**

**Até branch: 055**

##### **Fisco:**

**Atualizado dia: 12/05/2021**

**Até branch: 023**

##### **Resumo do processo**

Cada Branch de Versão terá uma dupla responsável por sua abertura, manutenção e fechamento, ou seja, um desenvolvedor e um testador que darão início ao Branch da Versão e o acompanharão até que o mesmo seja finalizado.

O arquivo em anexo nesta página, é uma programação para os próximos branchs e com seus responsáveis.

##### **Responsáveis por gerar a programação:**

\- Ainda a decidir, exemplo ERP em anexo gerado por Mateus Joia(Qualidade).

##### **Manutenção da página**

No topo da página terá informações relativas a atualização do documento. Quando o mesmo for atualizado, deve-se atualizar essas informações.

Quanto ao anexar o documento, deverá "substituir" o já existente referente ao seu departamento.

Exemplo:

\- Editar página

\- Clicar no canto direito em **Anexos**

**[![53.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/53.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/53.png)**

\- Na tela que abre, clicar em **Editar**, desta forma conseguiremos substituir o arquivo mas sem alterar nome ou forma lista grande de anexos, já que até o momento o botão **Excluir** não está funcionando.

[![54.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/54.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/54.png)

\- Arraste para área indicada, o novo arquivo atualizado com a programação, após clique em **Salvar**

<p class="callout warning">**Certifique-se de estar substituindo o arquivo correto de acordo com o departamento.**</p>

**[![55.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/55.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/55.png)**

# (extinto) Incluindo Branch da versão no Trunk

<p class="callout warning">**Processo feito pelo desenvolvimento**</p>

##### **Resumo do processo**

Passar as alterações trabalhadas no *branch* da versão, para o *Trunk*.

\- Update e Clean Up nas pastas locais C:\\Codigo Fonte e pasta da versão.  
\- Verificar se a pasta da versão está atualizada com Trunk, isso pode ser feito comparando último log do Trunk com última atualização no branch da versão.  
\- Caso estiver desatualizada, atualize fazendo Merge.  
\- Copie os arquivos dentro da pasta da versão (sem utilizar CTRL + A para não selecionar o arquivo oculto do .svn), cole dentro de C:\\Codigo Fonte.  
\- Simule o Commit, aperte em **None** por segurança, deixe marcado a opção "**Show unversioned files**" para aparecer os arquivos criados na versão.  
\- Coloque no log a mensagem de liberação da versão.  
\- Faça as comparações de alterações necessárias.  
\- Se tudo certo, então aperte em OK.

##### **Envolvidos no processo**

Dupla responsável pelo *branch* da versão, porém processo realizado pelo Dev.

##### **Etapas do processo**

Baixar a pasta a seguir para o computador através de um *<span style="text-decoration: underline;">[Checkout](https://wiki.supersoft.com.br/books/svn-basico/page/checkout)</span>* usando o endereço:

- - https://svn.supersoft.com.br/svn/desenvolvimento/trunk/CodigoBaseSkin

Ou caso já tenha em sua máquina, atualizar o *Trunk* local com *<span style="text-decoration: underline;">[Update](https://wiki.supersoft.com.br/books/svn-basico/page/update)</span>*.  
Faça o processo de *<span style="text-decoration: underline;">[Merge](https://wiki.supersoft.com.br/books/svn-basico/page/merge-comum-sem-conflitos)</span>* na sua pasta local, com as seguintes alterações:

<p class="callout info">***URL to merge from:*** Colocar endereço no branch da versão atual  
 Ex: https://svn.supersoft.com.br/svn/desenvolvimento/branches/Versoes/ERP/048-Caso-0044760  
***Merge depth:** Working copy* **Importante essa parte!**</p>

[![56_.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/56.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/56.png)

[![57.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/57.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/57.png)

<span style="color: #444444;"><span style="font-family: inherit;"><span style="font-size: small;">Fazer um <span style="text-decoration: underline;">[*Commit* ](https://wiki.supersoft.com.br/books/svn-basico/page/commit)</span>com as seguintes informações:</span></span></span>

<span style="color: #444444;"><span style="font-family: inherit;"><span style="font-size: small;">N</span></span></span><span style="color: #444444;"><span style="font-family: inherit;"><span style="font-size: small;">as Units com Status “*modified(property change only)*” dar um *Revert*</span></span></span>

<span style="color: #444444;"><span style="font-family: inherit;"><span style="font-size: small;">[![58.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/58.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/58.png)</span></span></span>

<span style="color: #444444;"><span style="font-weight: 400;">Utilizar como mensagem padrão a seguinte estrutura:</span></span>

<p class="callout success"><span style="color: #444444;"><span style="font-weight: 400;">Seguir a estrutura:  
Resumo do caso pai do branch da versão  
Casos pai (versionamento do módulo)  
 Casos filho (casos relacionados ao módulo acima e que serão entregues através da liberação do módulo)</span></span></p>

<span style="color: #444444;"><span style="font-weight: 400;">[![52.png](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/scaled-1680-/52.png)](https://wiki.supersoft.com.br/uploads/images/gallery/2021-03/52.png)</span></span>

##### **Ponto inicial do processo**

Pedido vindo da qualidade através do caso pai, para que seja incluído no *Trunk* as alterações do *branch* da versão.

##### **Ponto final do processo**

Avisar no mesmo caso que o código já está no *Trunk* e avisar na ferramenta de comunicação (Atualmente Rocket) que foi feita a inclusão das alterações e que podem iniciar abertura do casos do próximo *branch* da versão.

##### **Resultado esperado**

Passar para o *Trunk* o código trabalhado por versão, validado e testado, mantendo a integridade do *Trunk* para uma eventual versão de urgência "B Erro" no fluxograma.