gerenciamento de configuração 21 Mar 2009 06:17 am

A Escala TOFU

Como você sabe como um usuário de Subversion ou de Mercurial podemos facilmente copiar um ramo, branch, no controle de versão criando um ramo para adicionarmos código de uma nova funcionalidade. Porém em algum momento vamos ter que retornar os código alterados para o ramo principal. Se você esta só isso é tranqüilo quando você terminar o seu trabalho deve simplesmente efetuar o merge das suas alteração no ramo de origem. Quando todo o código estiver pronto efetuamos um release e tiramos uma nova copia do ramo original criando um ramo do release. Entretanto quando se tem vários desenvolvedores e vários fluxos de mudança a situação logo fica caótica.

Para resolver este problema usa-se um protocolo de atualização de ramos . A idéia é a seguinte se chamarmos o ramo original de mainline , o ramo que copiamos da mainline de codeline e pensarmos que toda codeline feita para adicionar novas funcionalidades esta abaixo da mainline e toda codeline feita para um release esta acima da mainline , nós criamos uma níveis entre as codelines. Estes níveis nos permite pensar que todo o código acima da mainline , código de um release, é mais estável que o código abaixo dele , por exemplo uma codeline adicionando uma nova funcionalidade ainda não testada. Portanto quanto mais alto estiver a codeline mais estável é o código.

O protocolo de atualização consiste em efetuar o merge imediatamente da codeline mais estável para as codelines menos estáveis e apenas efetuar o merge de uma codeline menos estáveis ao concluir o novo código e tiver efetuado os testes necessários.

Estes níveis formam uma escala de estabilidade de código que podemos chamar de “escala tofu” .

One Response to “A Escala TOFU”

  1. on 22 Apr 2009 at 8:41 am 1.Melanie said …

    Well said.

Trackback This Post | Subscribe to the comments through RSS Feed

Leave a Reply