A actualização dom nova versão da origem acontece normalmente em dois passos:
a árvore current
no branch de origem é actualizado com
a fonte do novo pacote da origem (a versão antiga é mantida no repositório
em
branches/upstream/
).
oldVersion
a versão em trunk/
torna-se actualizada ao se fundir as
alterações entre as versões de origem no directório
trunk/
.
O script svn-upgrade (anteriormente
svn-uupdate) faz ambas por si e também cria uma nova
entrada no registo de alterações. O primeiro passo é feito internamente ao
utilizar um script de terceiros (svn_load_dirs, veja o
livro Subversion para documentação), o segundo passo é feito com o comando
merge do svn. Corra
svn-upgrade a partir do seu directório de trabalho local
(ao qual corresponde o produto de verificação do
trunk/
).
Após correr o svn-upgrade alguns ficheiros podem ficar em estado de conflito. Isto acontece naturalmente se você modificou alguns ficheiros no pacote da origem e agora na origem fizeram algo semelhante nas mesmas posições, então o svn merge ficou confundido.
Quando o svn-upgrade se queixar de ficheiros em estado de conflito, corrija-os manualmente. Quando pronto, use o comando svn resolved para os marcar como limpos e svn commit para actualizar o repositório.