Esta secção mostra-lhe como experimentar algumas das funcionalidades mais usadas num pequeno repositório de teste. Naturalmente não explicará tudo - afinal, isto é apenas um Guia de Início Rápido. Após estar familiarizado deverá tirar algum tempo para ler o resto deste guia de utilização, que o levará através das coisas com muito mais detalhe. Também explicará mais sobre como instalar corretamente um servidor Subversion.
Para um projeto real, terá um repositório instalado algures num local seguro e com um servidor Subversion a controlá-lo. Para os objetivos deste tutorial iremos utilizar a funcionalidade do repositório Subversion local, que te permitirá acesso direto a um repositório criado no seu disco duro, sem nenhuma necessidade de servidor.
Primeiro crie una nova pasta vazia no seu PC. Poderá ir para qualquer lado, mas neste tutorial vamos dar-lhe o nome C:\svn_repos
. Agora clique com o botão direito do rato na nova pasta e a partir do menu de contexto escolha → . É então criado o repositório dentro da pasta, pronto a usar. Iremos também criar a estrutura interna de pastas por defeito, clicando no botão .
A funcionalidade do repositório local é muito útil apenas para testes e avaliação, a não ser que esteja a trabalhar sozinho num único PC, deverá usar sempre um servidor Subversion corretamente configurado. É tentador numa empresa pequena evitar o trabalho de instalar um servidor, apenas para aceder ao seu repositório situado numa partilha de rede. Nunca faça isso. Irá perder dados. Leia “Aceder ao Repositório numa Partilha de Rede” para descobrir porque isso é uma má ideia e saber como instalar um servidor.
Na caixa de diálogo limpar, existem também outra opções úteis para colocar a cópia de trabalho num estado mais limpo
.
A outra funcionalidade importante desta caixa de diálogo é a caixa Importar mensagem, que lhe permite introduzir uma mensagem descrevendo o que está a fazer. Quando voltar a olhar para a história do projeto, essas mensagens de submissão serão um guia valioso para as alterações que foram feitas e o porquê. Neste caso podemos dizer algo como “Importar o projeto Widget1”. Clique em e a pasta é adicionada ao seu repositório.
Agora que há um projeto em nosso repositório, precisamos criar uma cópia de trabalho para usar nas tarefas do dia-a-dia. Note que o ato de importar uma pasta não a transforma automaticamente em uma cópia de trabalho. O termo do Subversion para criar uma nova cópia de trabalho é Checkout
. Vamos fazer o checkout da pasta Widget1 do nosso repositório para uma pasta de desenvolvimento chamada C:\Projects\Widget1-Dev. Crie essa pasta, depois clique com o botão direito do mouse sobre ela e selecione TortoiseSVN
Na configuração padrão, o item Obter do menu não está localizado no submenu do TortoiseSVN, contudo, é mostrado no menu superior do explorador. Os comandos do TortoiseSVN que não estão no submenu têm o SVN
agregado em:
Irá notar que a aparência desta pasta é diferente da nossa original. Cada ficheiro tem uma marca de verificação verde no quanto inferior esquerdo. Isso são ícones de estado do TortoiseSVN que apenas estão presentes numa cópia de trabalho. O estado verde indica que o ficheiro está inalterado em relação à versão do repositório.
Hora de trabalhar. Digamos que os arquivos 2Componente1.c2
e 3ReadMe.txt3
da pasta Componente1-Dev
foram editados. Note que a sobreposição de ícones nestes arquivos estão agora em cor vermelha, indicando que há alterações locais nos mesmos.
Mas quais são as alterações? Clique com o botão direito num dos ficheiros alterados e selecione
→ . A ferramenta de comparação de ficheiros do TortoiseSVN arranca mostrando exatamente quais as linhas que foram alteradas.OK, agora estamos satisfeitos com as alterações e vamos atualizar o repositório. Esta cação é conhecida como a Submissão
das alterações. Clique com o botão direito na pasta Widget1-Dev
e selecione → . A caixa de diálogo submeter irá listar os ficheiros alterados, cada um com a sua caixa de verificação. Poderá querer escolher um sub-grupo desses ficheiros, mas neste caso iremos submeter as alterações de ambos os ficheiros. Introduza uma mensagem, descrevendo a razão da alteração e clique no botão . A caixa de diálogo de progresso mostrará os ficheiros a serem carregados para o repositório, e está terminado.
À medida que o projeto se desenvolve irá necessitar de adicionar novos ficheiros - digamos que adiciona novas funcionalidades em Extras.c
e adiciona uma referência no Makefile
, já existente. Clique com o botão direito na pasta e → . A caixa de diálogo Adicionar mostra agora todos os ficheiros não versionados e pode escolher quais quer adicionar. Outra maneira de adicionar ficheiros é clicar no próprio ficheiro e selecionar → .
Agora quando for submeter a pasta, o novo ficheiros aparecerá como Adicionado e o ficheiro existente como Alterado. Observe que poderá fazer um clique duplo no ficheiro alterado para verificar quais foram exatamente as alterações feitas.
Uma das características mais úteis do TortoiseSVN é a janela de Auditoria. A janela mostra a você a lista de todos os commits feitos para um arquivo ou diretório, e mostra detalhadamente as mensagens que você digitou (você digitou uma mensagem para o commit como sugerido? Se não, agora você vê porque isso é importante).
Bem, então eu manipulei um pouco aqui e usei uma imagem do repositório do TortoiseSVN.
O painel de topo mostra a lista de revisões submetidas juntamente com o início da mensagem de submissão. Se selecionar uma das revisões, o painel do meio irá mostra a mensagem de registo completa para essa revisão, e o painel do fundo mostrará a lista de ficheiros e pastas alterados.
Cada um desses painéis tem um menu de contexto que lhe fornece muitas mais maneiras de usar a informação. No painel do fundo poderá fazer um clique duplo num ficheiro para ver exatamente que alterações foram feitas nessa revisão. Consulte “Caixa de Diálogo Registo de Revisões” para obter toda a informação.
Uma funcionalidade comum a todos os sistemas de controlo de versões, é deixarem-lhe desfazer as alterações que fez anteriormente. Como poderia esperar, o TortoiseSVN faz com que seja de fácil acesso.
Se quiser livrar-se das alterações que ainda não submeteu e voltar a ter o seu ficheiro como estava, antes de o começar a editar, o
→ será o seu melhor amigo. Este descarta as suas alterações (para o lixo, por precaução) e reverte para a revisão submetida com que iniciou a edição.Se quere desfazer os efeitos de uma revisão em particular, inicie a caixa de diálogo de registo e encontre a revisão comprometida. Selecione
→ e essas alterações serão desfeitas.