Árvore subversion do FreeBSD – o que nós mortais precisamos saber
Posted by gondim | Posted in Dicas, FreeBSD | Posted on 05-01-2013
Tags:release, releng, stable, subversion, svn
1
Percebi ultimamente uma certa confunsão de algumas pessoas sobre a árvore subversion e resolvi fazer esse post rápido e explicativo. Quando fazemos a primeira vez o svn co, estamos escolhendo com que ramo queremos trabalhar. Podemos trocar de ramo quando quisermos mas precisamos entender o que é cada um ou pelo menos os mais importantes:
svn://svn.freebsd.org/base/release/9.1.0 -> esse seria o 9.1-RELEASE puro, sem por nada à mais. A imagem da ISO que baixamos para fazermos a instalação. Se escolhermos usar ele não teremos qualquer atualização, nem mesmo a de segurança.
svn://svn.freebsd.org/base/releng/9.1 -> esse é o mínimo que usaríamos em um servidor porque ele é o 9.1-RELEASE e sempre que houverem atualizações de segurança, elas serão adicionadas aqui e passarão à ter um sufixo no nome indicando que houve uma atualização. Ex.: 9.1-RELEASE-p5 que indicaria ser a 5ª atualização de segurança para o sistema. Nessa modalidade você só terá correções de segurança.
svn://svn.freebsd.org/base/stable/9 -> aqui encontramos o famoso STABLE que atualmente é o 9.1-STABLE, que um dia será 9.2-PRERELEASE quando tiver para sair o 9.2. Esse ramo sempre que atualizado virá com as atualizações de segurança, correção de bugs e ainda algumas coisas novas que o time do FreeBSD pode achar interessante ser adicionado. Eu pessoalmente uso esse mas com moderação conforme expliquei em post anterior.
svn://svn.freebsd.org/ports/head -> esse aqui é o nosso ports que usamos para instalar nossos pacotes optimizados. Que podemos usar ele no lugar do portsnap.
Dica: se você quer confirmar ou saber em que branch está sendo usado no releng/9.1, por exemplo. Lembra do sufixo? Você pode ver no seu navegador acessando o arquivo newvers.sh da versão que você quiser consultar. Abaixo 2 exemplos:
- http://svn.freebsd.org/base/releng/9.1/sys/conf/newvers.sh
- http://svn.freebsd.org/base/releng/9.0/sys/conf/newvers.sh
Ao abrirmos esses 2 arquivos encontraremos 2 variáveis no início deles:
REVISION=”9.1″
BRANCH=”RELEASE”REVISION=”9.0″
BRANCH=”RELEASE-p5″
O primeiro significa que no 9.1 ainda não houve alguma atualização de segurança. Já no segundo consta que na versão 9.0 estamos na 5ª atualização de segurança por causa do p5. Logicamente concluímos que o 9.1 já vem com todas as atualizações do 9.0. Possivelmente em uma próxima atualização poderíamos ter:
REVISION=”9.1″
BRANCH=”RELEASE-p1″REVISION=”9.0″
BRANCH=”RELEASE-p6″
Adicionando mais uma coisa importante: se você já está usando um ramo por exemplo releng/9.1 e quer mudar para outro, tipo o stable/9, não precisa apagar todo o seu /usr/src e fazer novamente. Você pode usar outro recurso do subversion mostrado abaixo:
# cd /usr/src
# svn switch svn://svn.freebsd.org/base/stable/9
Bem, espero ter ajudado com mais essas informações.
Grande abraço à todos