03 Padro Es 1
PADRÕES DE GERÊNCIA
DE CONFIGURAÇÃO
Gibeon Aquino gibeon@dimap.ufrn.br Material adaptado do curso do Prof. Thiago Burgos
REFERÊNCIA
Todos os padrões estão contidos no livro
“Software Configuration Management Patterns:
Effective Teamwork, Practical Integration”
Steve Berczuk and Brad Appleton
| 2
1
09/05/2015
O QUE SÃO PADRÕES?
Padrões são formas de representação de conhecimento, organizado de forma estruturada
Objetiva a rápida assimilação e aplicação em um novo contexto Construído a partir da destilação de anos de experiência
| 3
PADRÕES EM GC
Classificação dos padrões:
Codeline
Workspace
| 4
2
09/05/2015
MAINLINE
Classificação: Codeline
Objetivo: Simplificar sua estrutura de branches Como manter várias codelines (e minimizar merging)?
| 5
MAINLINE (CONTEXTO)
A utilização de Braches é uma ótima maneira de isolar esforços paralelos.
Exemplos de branches durante o desenvolvimento:
Variar código para plataformas
Manter manutenções de releases
Isolar esforços durante o desenvolvimento.
Porém, isto requer merging, o que pode ser custoso.
Tarefa 1
Tarefa 2
Merge
Tarefa 3
| 6
3
09/05/2015
MAINLINE (CONTEXTO)
O uso desenfreado de branches pode gerar estruturas complexas, difíceis de serem mantidas e integradas.
| 7
MAINLINE (SOLUÇÃO)
Controle o uso de branch elegendo uma linha de desenvolvimento principal que
Agrega todos os esforços
Serve de base para outras codelines
Reduz custo com merging
Rel 1.1
Correções t1
/Mainline
Changes
1
Rel 1.0
1.0
Changes
2
2.0
Rel 2.0
| 8
4
09/05/2015
ACTIVE DEVELOPMENT LINE
Classificação: Codeline
Objetivo: Desenvolver uma mainline estável e de rápida evolução.
Como manter a mainline estável para que seja útil?
| 9
ACTIVE DEVELOPMENT LINE (CONTEXTO)
A mainline é um ponto de sincronização
Requer a comunicação entre os desenvolvedores
Check-ins e integrações freqüentes são bons
Check-ins com má qualidade afeta a todos