Controle do Subversion Utilizando o Plug-in Subversive
O controle de origem é uma parte essencial de qualquer esforço de desenvolvimento de software sério, principalmente
daqueles que suportam desenvolvimento distribuído para uma equipe distribuída geograficamente (os co-autores deste tutorial,
por exemplo, estão em lados opostos de um continente). Tal sistema permite mudanças não coordenadas em uma base de código,
sem que ninguém tenha medo de que uma mudança feita por um programador afete adversamente o outro — e sem uma autoridade
central controlando o processo inteiro ou sem a necessidade de uma coordenação contígua ou meticulosa entre os programadores.
O Subversion é um sistema de controle de versão de software livre, semelhante ao CVS, mas bastante considerado seu
eventual sucessor. O suporte do Subversion para o Eclipse esteve disponível por muitos anos através de plug-ins de terceiros,
sendo que o mais popular deles era chamado Subversive. O projeto do Ganymede pegou o desenvolvimento do Subversive e o incluiu
como uma biblioteca principal do Eclipse. Entretanto, problemas jurídicos pendentes o impedem de ser distribuído com o
restante do Ganymede, assim, pelo menos por quanto, você ainda deve instalar separadamente o plug-in Subversive de dentro
do Ganymede.
Siga adiante para ver como configuramos o Subversive e o utilizamos para gerenciar o código de origem para o aplicativo
do organizador pessoal.
Instale o Subversive
O Subversive consiste em duas partes, sendo que cada uma deve ser instalada separadamente. A primeira é o plug-in
Subversive em si, que fornece os elementos de UI para integrar o suporte do Subversion ao Eclipse. A segunda parte
são as bibliotecas do conector,
e elas são desenvolvidas e licenciadas separadamente. Para instalar o plug-in Subversive de dentro do Eclipse, navegue
para Ajuda > Atualizações de Software.
Figura 4. Atualizações de Software no Menu Ajuda
Escolha a tela Software Disponível e clique em Incluir Site. Para Local, insira http://download.eclipse.org/technology/subversive/0.7/update-site/
e clique em OK.
Figura 5. Incluir Site para Subversive
Isso incluirá uma lista de plug-ins relacionados, mas antes de instalá-los, clique em Incluir Site novamente e
inclua o local para os conectores do Subversive. Insira http://www.polarion.org/projects/subversive/download/eclipse/2.0/update-site/
para o local e clique em OK.
Figura 6. Incluir Site para Conectores do Subversive
Você verá que ambos os sites de atualização incluíram inúmeros possíveis plug-ins diferentes. Você pode selecionar todos
eles, mas o mínimo necessário por enquanto são aqueles rotulados como SVN Team Provider e Subversive SVN Connectors. Selecione-os
na lista e clique em Instalar.
Figura 7. Plug-ins Subversive
O Eclipse levará você até um conjunto de telas padrão para instalar o plug-ins, incluindo uma tela solicitando que você
revise e aceite os termos de licença. Trabalhe nessas telas e, quando for solicitado, reinicie o ambiente de trabalho do
Eclipse. Os plug-ins Subversive agora estão instalados.
Configure um Repositório
O Subversion, como CVS, é um repositório de código de origem baseado em servidor, o que o transforma em uma excelente
opção para o desenvolvimento de software colaborativo entre equipes distribuídas. A parte do servidor não é uma parte do
Eclipse, e a instalação e a configuração de um servidor Subversion estão além do escopo deste tutorial. Entretanto, existem
inúmeras maneiras de se executar um, incluindo o uso do Apache (consulte Recursos para obter mais
informações).
Quando você tiver um servidor Subversion que possa ser utilizado, você poderá configurar seu projeto para armazenar sua
origem e suas configurações através do plug-in Subversive. Realce o nome do projeto no Package Explorer e exiba seu menu de
contexto. Lá, escolha Equipe > Compartilhar Projetos. O Eclipse exibirá uma tela oferecendo opções de sistemas de
versão: CVS, que esteve disponível como recurso principal do Eclipse por algum tempo; e SVN, que é a notação estenográfica
para o Subversion, que foi ativada quando você incluiu o Subclipse.
Figura 8. Compartilhando um Projeto via SVN
Selecione SVN e escolha Avançar. Você será apresentado a uma tela (mostrada na Figura 9) onde irá inserir
a URL do servidor e as credenciais para seu servidor Subversion. Insira as informações para seu servidor. Aqui, você pode
aceitar os padrões para nomear o repositório que estão configurados nas próximas telas e clicar em Concluir.
Figura 9. Assistente Compartilhar Projeto
O Eclipse vai apresentar uma tela de confirmação para seu projeto (consulte Figura 10). Todos os arquivos que fazem
parte do nosso projeto serão selecionados por padrão, mas você pode optar por impedir que alguns deles sejam registrados
neste momento se quiser. Também será solicitado que você faça um comentário inicial de registro de entrada. É uma boa
prática inserir comentários em cada registro de entrada. Insira seu comentário e clique em OK. Para o código do
aplicativo organizador, todos os arquivos foram registrados.
Figura 10. Caixa Registro de Entrada do Subversion
Agora o Eclipse incluiu todos os arquivos para nosso organizador no seu repositório do Subversion. Se você estiver
utilizando uma versão WebDAV do Subversion, como através do Apache como nós fizemos, você pode explorar a estrutura do
repositório utilizando seu navegador da Web. Simplesmente insira as mesmas URL e credenciais utilizadas para configurar o
repositório no Subversive e navegue pela árvore do diretório por meio dos hyperlinks em cada arquivo ou diretório.
Figura 11. Uma Visualização do Repositório do Subversion através da Web
Você pode ver que nosso projeto agora está ligado ao Subversion no Package Explorer. Cada arquivo sob o controle do
Subversion possui um número de revisão próximo dele, e o projeto em si tem o nome do repositório próximo do seu nome.
Figura 12. O Package Explorer após Ser Compartilhado através do Subversion
Trabalhando com o Código no Repositório
Como CVS, agora podemos acessar as funções de controle de origem do Subversion no menu de contexto Equipe. Para selecionar
um arquivo no Package Explorer que queremos atualizar no repositório, chame o menu de contexto e selecione Equipe. Agora
isso mostra todos os recursos do Subversion neste menu de contexto.
A seguir está uma lista dos comandos mais comuns que utilizaremos (consulte Figura 13):
Commit
- Para salvar suas mudanças no repositório
Update
- Para atualizar sua cópia local com o que há de mais recente no repositório
Revert
- Para descartar suas mudanças e substituí-las pelo que há de mais recente no repositório
Add to Version Control
- Para marcar arquivos locais recém-criados no repositório (depois você deve emitir um Commit para o arquivo para
incluí-lo no servidor).
Figura 13. O Menu de Contexto do Subversion
Para excluir um arquivo do repositório, exclua-o do Package Explorer como faria normalmente (o item Excluir
no menu de contexto desse arquivo). Em seguida, emita um commit para o diretório-pai desse
arquivo. Antes de executar qualquer commit no servidor, você terá uma chance de rever todas
as mudanças; para uma exclusão, você verá o nome e o local do arquivo excluído.
O Subversion também se assemelha ao CVS porque utiliza bloqueio otimista — ou seja, em vez de efetuar o registro
de saída de um arquivo para edição e bloqueá-lo para outros, o código pode ser editado localmente e ser registrado quando
for concluído. No momento do registro de entrada, quaisquer conflitos são resolvidos.
|