// // // PHPH.com.br - Comandos básicos do subversion
All for Joomla All for Webmasters

Comandos básicos do subversion

Subversion, também conhecido por SVN, é um sistema para controle de versão livre, vital para o desenvolvimento de qualquer espécie de código-fonte ou documentação. O SVN consiste em um servidor que gerencia o "repositório" e um cliente capaz de comunicar-se com o servidor SVN.

O repositório consiste um sistema de arquivos virtual que armazena todas as versões (no jargão do svn, "revisões") de todos os arquivos sob o controle de versão. O cliente svn é responsável por gerenciar uma cópia local de trabalho independente do repositório.

A cópia local de trabalho (working copy) é independente da versão existente no repositório: uma alteração nela não resulta necessariamente uma alteração no respositório a não ser que as diferenças entre a cópia local e o repositório sejam submetidas pelo cliente ao repositório no servidor SVN criando-se uma nova revisão (um "commit" da cópia de trabalho).
 
A "working copy" também pode ser sincronizada com a versão HEAD (versão atual) do repositório (um "update" na cópia de trabalho) e também pode ser combinada com a versão HEAD do repositório (um operação "merge").
 
Uma breve descrição dos comandos mais importantes do svn:
 

svnadmin create /caminho/ao/repositório: cria repositório central. O repositório é o sistema de arquivos virtual utilizado pelo subversion.

svn import /tmp/meuprojeto file:///caminho/ao/repositorio/meuprojeto -m "Importação inicial": Importa arquivos existentes no computador para o respositório central. Após o comando, o repositório conterá a árvore de dados de meuprojeto.

svn checkout file:///caminho/ao/repositório/meuprojeto/trunk meuprojeto: Solicita uma cópia de trabalho do diretório trunk. A partir de então, teremos uma cópia pessoal da pasta remota truck na pasta local meuprojeto.

svn commit button.c: Publica as alterações feitas no arquivo local button.c para o repositório. Após este comando, os usuários que fizerem um checkout obterão a nova versão que foi publicada.

svn update: Sincroniza a cópia de trabalho local com o repositório. Atualiza a cópia local caso houve o commit de alguma alteração em qualquer arquivo.

svn add foo: Agenda a adição de um arquivo, diretório ou link simbólico ao repositório. No próximo commit, foo se tornará uma filha do diretório atual. Caso foo seje um diretório, tudo contido neste será adicionado também. Caso você deseje adicioná-lo ao diretório de maneira não recursiva, utilize o argumento --non-recursive.

svn delete foo: Agenda foo para ser deletado do repositório. Atenção: quando você efetuar um commit, o arquivo será deletado do repositório e também da sua cópia local de trabalho. É claro que o arquivo poderá ser restaurado através de revisões anteriores.

svn copy foo bar: Cria um novo item bar como uma cópia de foo. svn não cria redundância. O arquivo é adicionado ao repositório de maneira inteligente.

Há um cliente subversion gráfico para Windows chamado TortoiseSVN disponível em http://tortoisesvn.tigris.org/ que automatiza o controle de versão de arquivos.

Itens relacionados (por tag)

Deixe um comentário

Certifique-se de preencher os campos indicados com (*). Não é permitido código HTML.