Periodicamente, deverás garantir que as alterações feitas por outros são incorporadas na tua cópia de trabalho local. O processo de obter as alterações do servidor para a cópia local é conhecido como actualizando. Actualização pode ser feita em ficheiros isolados, um conjunto de ficheiros seleccionados, recursivamente numa estrutura de hierarquia de pastas. Para actualizar selecciona os ficheiros e/ou pastas que desejas, clica com o botão direito e selecciona → no menu de contexto do explorador. Uma janela aparecerá mostrando o progresso da actualização, enquanto ela decorre. As alterações feitas por outros serão fundidas com os teus ficheiros, mantendo quaisquer alterações que tenhas feito nos mesmos. O repositório não é afectado pela actualização.
A caixa de diálogo de progresso usa um código de cores para evidênciar diferentes acções de actualização
Novo item adicionado à tua CT.
Item redundante apagado da tua CT, ou um item em falta substituído na tua CT.
Alterações do repositório fundidas com sucesso, com tuas alterações locais.
Alterações do repositório fundidas com as alterações locais, resultando em conflitos que é necessário resolver.
Item não alterado, na tua CT, actualizado com uma nova versão do repositório.
Este é o esquema de cores por defeito, mas podes alterar essas cores usando a caixa de diálogo configurações. Ler “Preferências de cor do TortoiseSVN” para mais informação.
Se tiveres alguns conflitos durante uma actualização (o que pode acontecer se outros alterarem as mesmas linhas nos mesmos ficheiros que tu alteraste, e essas alterações não condizerem), então a caixa de diálogo mostra esses conflitos a vermelho. Podes efectuar clicar duplo clique nessas linhas para iniciar a ferramenta externa de fusão, para resolver esses conflitos.
Quando a actualização está concluída a caixa de diálogo de progresso mostra, debaixo da lista de ficheiros, o resumo do números de itens actualizados, adicionados, apagados, em conflito, etc. Esta informação de sumário pode ser copiada para o clipboard usando Ctrl+C.
O comando padrão Actualizar não tem opções e actualiza apenas a tua cópia de trabalho par a revisão HEAD do repositório, que é o caso mais comum. Se quiseres mais controlo sobre o processo de actualização, deverás então utilizar
→ . Este permite-te actualizar a tua cópia de trabalho para uma revisão específica, não apenas para a mais recente. Supõem que a tua cópia de trabalho está na revisão 100, mas queres reflectir o estado quer tinha na revisão 50 - então actualiza simplesmente para a revisão 50.Na mesma caixa de diálogo podes também escolher a nível para a qual actualizas a pasta corrente. Os termos usados são descritos em “Profundidade do Checkout”. O nível por defeito é Cópia de trabalho, que preserva a definição de nível existente. Podes também fixar o nível persistente
o que significa que actualizações subsequentes irão usar essa novo nível, i.e. esse nível será então usado como a nível por defeito.
Para tornar mais fácil incluir ou excluir itens específicos no checkout, clica no botão
. Isto abre uma nova caixa de diálogo onde podes seleccionar todos os itens que quiseres na tua cópia de trabalho, e desseleccionar is itens que não quiseres.Poderás escolher se queres ignorar qualquer projecto externo na actualização (i.e projectos referenciados com svn:externals
).
Se actualizas um ficheiro ou uma pasta para uma revisão específica não deverás efectuar alterações nos mesmos. Obterás mensagens de erro “desactualizado” quando tentares submete-las! Se quiseres desfazer as alterações efectuadas num ficheiro ou começar de novo a partir de uma revisão anterior, podes rebobinar para uma revisão anterior a partir da caixa de diálogo de registo de revisões. Dá uma vista de olhos em “Reverter (Anular) revisões no repositório” para mais instruções e métodos alternativos.
pode ocasionalmente ser útil para ver qual o aspecto que tinha o teu projecto num ponto anterior da sua história. Mas na generalidade, actualizar ficheiros individuais para uma versão anterior não é uma boa ideia, pelo que deixa a tua cópia de trabalho num estado inconsistente. Se o ficheiro que estás a actualizar mudou de nome, poderás constatar que o mesmo desaparece da tua cópia de trabalho porque, nenhum ficheiro com esse nome existia na revisão anterior. Deves também constatar que o item mostrará uma sobreposição verde normal, pelo que será indistinguível dos ficheiros que estão actualizados.
Se queres simplesmente uma cópia local de uma versão antiga de um ficheiro é melhor utilizar, a partir da caixa de diálogo do registo, o comando
Se seleccionares múltiplos ficheiro e pastas no explorador e então seleccionares
, todos esses ficheiros/pastas são actualizados um por um. O TortoiseSVN garante que todos os ficheiros/pastas que são do mesmo repositório são actualizados exactamente para a mesma revisão! Mesmo que entre essas actualizações outra submissão ocorra.