Emilio Miranda

Página Pessoal

Procura

Já leram esse artigo: 1289

Who's Online

We have 25 guests 1 members online

Formulário de Login



Usando Subversion no VIM PDF Imprimir E-mail
Escrito por Emilio Miranda   
Qui, 28 de Fevereiro de 2008 14:07

Depois de usar intensamente o meu pendriver para passar os meus textos do computador para o notebook resolvi colocar para funcionar o sistema de gerenciamento de versão Subversion na minha máquina.

Classicamente os sistemas de gerenciamento de versão eram usados pela comunidade de programação. Com o tempo, notou-se que eles seriam úteis para controle de versão de documentos diversos em qualquer formato. Os processadores de palavras, como o MS Word e o Writer Office incorporaram este mecanismo já a algum tempo. Para aqueles que como eu não os usa, resta a opção de incorporar um plugin no editor de texto preferido, que no meu caso é o VIM.

Instalação

Inicialmente, peguei o plugin, svncommand.vim feito pelo Adam Lazur que encontra-se no site do VIM.. A instalação do plugin é feita em duas etapas. A primeira consiste em descompactá-lo num diretÅ•io de sua escolha,

 $ mv svncommand.tar.gz ~/diretório_de_sua_escolha  
$ tar xfv svncommand.tar.gz
 

A segunda etapa consiste em colocar o plugin svncommand.vim no diretório ~/.vim/plugin/

 $ cd ~/diretório_de_sua_escolha  
$mv svncommand.vim ~/.vim/plugin
 

Agora instalaremos o Subversion,

 $ sudo apt-get install subversion  
 

Em seguida, vamos ajustar o Subversion para começar a funcionar. Este sistema necessita de um repositório para armazenar as versões dos documentos. Chamo a atenção para o fato de que faremos um setup para uma instalação local, numa máquina cliente. Para instalação do Subversion num servidor, por favor procure na internet outro tutorial. Adicionalmente, criaremos um grupo de usuários que poderão usar este sistema. Entre os seguintes comandos como root, numa estação Ubuntu,

 # addgroup usuarios-svn 
# usermod -G usuarios-snv -a [seu_nome]
# mkdir -m 770 ~/repositorio-svn
# chgrp usuarios-svn ~/repositorio-svn
# svnadmin create --fs-type fsfs ~/repositorio-svn

A primeira linha da listagem acima criou um grupo usuários-svn. A segunda incluiu o seu nome no grupo (note que este nome é que você usa para fazer o login na sua máquina). A terceira linha criou um diretório que servirá de repositório para o Subversion. A quarta deu a propriedade do diretório ~/repositório-vn para o grupo criado. A quinta, e última linha, criou um sistema de arquivo fsfs para o Subversion. Esta operação é para garantir que a sua instalação de Subversion não use o sistema de arquivos original bdb que tinha um problema de instabilidade. Uma explicação a mais, o repositório foi criado desta maneira por que as vezes eu escrevo junto com outra pessoa que tem acesso ao texto fazendo logon na minha estação. Pode ser que não seja este o seu caso. Se o repositÅ•io for somente para seu uso, basta fazer,

  # svnadmin create --fs-type fsfs ~/repositorio-svn

Depois de criado o local onde o banco de dados do svn ficará nós teremos que agregar os arquivos para serem controlados pelo svn. Para isto vamos usar como exemplo três arquivos de nomes arq1.xhtml, arq2.xhtml e arq3.xhtml. Crie a seguinte árvore de diretórios em /tmp para depois colocar estes três arquivos no diretório indicado,

 $ cd /tmp 
$ mkdir blog/; mkdir blog/branches /blog/tags; mkdir /blog/trunk
$ mv ~/diretório_onde_estão_os_arquivos_exemplos/*.xhtml /tmp/blog/trunk

Depois de copiados a árvore de diretórios ficará assim,

 /tmp/blog/branches/
/tmp/blog/tags/
/tmp/blog/trunk/
arq1.xhtml
arq2.xhtml
arq3.xhtml

Falta só adicionar ao banco de dados do svn os arquivos exemplos,

 $ svn import /tmp/blog file:///~/repositorio-svn/blog -m "importação inicial"
Adding /tmp/blog/branches
Adding /tmp/blog/tags
Adding /tmp/blog/trunk
Adding /tmp/blog/trunk/arq1.xhtml
Adding /tmp/blog/trunk/arq2.xhtml
Adding /tmp/blog/trunk/arq3.xhtml
... Committed revision 1
 

Neste ponto você pode descartar o diretório inicial /tmp/blog por que o svn não mais o usará. Para começar a manipularmos com os dados armazenados no banco de dados do svn, nós, finalmente necessitaremos criar um diretório de trabalho,

 $ cd ~  
$ mkdir meu_blog
$svn checkout file:///~/repositorio-svn/blog/trunk ~/meu_blog
 

Nunca é demais dizer que o diretório do banco de dado do svn não deve ser manipulado. Se você fizer isto, ele poderá ser danificado irremediavelmente. Leia a documentação do svn para detalhes.

Uso

A primeira providencia é ler as explicações contidas no próprio plugin svncommand.vim. Retirei de lá a listagem resumida de suas funções,

 " The default mappings are as follow:" 
" sa SVNAdd
" sn SVNAnnotate
" sc SVNCommit
" sd SVNDiff
" sg SVNGotoOriginal
" sG SVNGotoOriginal!
" sl SVNLog
" sr SVNReview
" ss SVNStatus
" si SVNInfo
" su SVNUpdate
" sv SVNVimDiff

Vá para o diretório de trabalho e faça alguma modificação em um dos arquivos. Salve-o, e chame o comando,

 :SVNCommmit  

O VIM abrirá um buffer para que você coloque as anotações da revisão. Terminada a anotação invoque,

 :w
O VIM irá pedir-lhe para que tecle ENTER e então uma nota de revisão bem sucedida aparecerá. 

Se você pedir um status ou informação do arquivo o VIM lhe mostrará o número da revisão como 2. Então, tudo estará pronto para você começar a produzir seus textos com controle de versão.

 

Adicionar comentário


Código de segurança
Atualizar