Controlando versões de um documento

O subversion é um programa que controla todas as versões de um documento, desde a data da criação até a última modificação, além disso o programa consegue gerenciar um grupo de usuários que modificam o mesmo arquivo. Existe um repositório onde ficam todas as versões de todos os documentos criados para que todas as pessoas envolvidas tenham acesso às versões, depois de instalado o subversion (sudo apt-get install subversion) o usuário precisar dar um checkout no repositório fazendo svn checkout svn://endereço (logo após digitar o login e senha), com esse comando o usuário irá baixar para sua máquina todos os arquivos disponíveis no repositório. O controlador trabalha dentre de um diretório especial chamado /trunk dentro dele devem estar todos os arquivos que estão sob controle de versão, é importante saber que os comandos devem ser dados dentro deste diretório.

Imagine que várias pessoas estão envolvidas em um projeto e o repositório está no endereço 200.200.3.4 dentro do diretório /projetos/trunk então cada pessoa envolvida deve criar um diretório chamado projetos e entrar nele, após isso deverá digitar o seguinte comando num terminal svn checkout svn://200.200.3.4/projetos/trunk (digitar o login e senha), neste momento (se o sistema aceitou seu login e senha) os arquivo estão sendo copiados para seu computador. Agora suponha que você alterou um arquivo com o comando svn commit -m "Comentários da modificação" os arquivos modificados serão enviados para o repositório principal para que todos as pessoas envolvidas no projeto tenham acesso as suas modificações. Pra adicionar um arquivo no repositório você deve digitar o comando svn add caminho_do_arquivo e para atualizar os seus arquivos você deve digitar svn up. É comum modificar vários arquivos e esquecer qual arquivo foi modificado para isso existe o comando svn status que listará todos os arquivos que você modificou e ainda não atualizou o repositório principal. Para visualizar o log da última mudança basta digitar svn log -r HEAD -v

Existem outros comandos como svn mv, svn cp, svn rm que significam mover, copiar e remover respectivamente os arquivos do repositório, a diferença desses comandos para os comandos do linux é que o svn mv copia o arquivo para o lugar desejado e adiciona no repositório depois apaga o arquivo que esta no endereço antigo do repositório, o svn cp copia e adiciona o arquivo no lugar desejado, apenas as modificações do arquivo copiado é gravado no repositório, otimizando o espaço e svn rm apenas remove o arquivo do repositório.

.

.