SVN - Alterar a cópia de trabalho para apontar para o novo caminho svn


87

Eu tenho um Repositório SVN que foi movido para um novo endereço / caminho. No entanto, tenho uma cópia de trabalho com código-fonte não confirmado ainda apontando para o caminho do repositório antigo (agora inválido). Como você altera uma cópia de trabalho para apontar para um novo repositório?

Respostas:



58

Use o svn switchcomando com a --relocateopção de linha de comando.


1
Obrigado. Isso é o que eu usei: svn switch --relocate file: /// Users / user / old_repository / project / trunk file: /// Users / user / new_repository / project / trunk
quano

Não corrige os URLs em svn: externals. Alguma ideia de como fazer isso?
Axel Bregnsbo

26

Usando TortoiseSVN

  1. Clique com o botão direito na cópia de trabalho e selecione 'SVN Switch ...'
  2. No formulário 'Switch to branch', selecione o novo caminho SVN

Usando o comando

  1. Abra o console
  2. Navegue até a cópia de trabalho cd [working copy path]
  3. Escreva o comando svn relocate [new url]

Isto é aplicável apenas se estiver usando o TortoiseSVN, que o autor da postagem não indicou que está usando.
zck

Olá @zck, por favor, note que eu escrevi 2 solução em 1 resposta primeiro TortoiseSVN e a segunda é Command este comando está obsoleto para subversão em geral você pode revisar esta página svn relocate / svn Subcommands
Ahmed Abdallah

Bem, sua resposta foi editada depois que eu comentei para incluir uma forma de linha de comando de fazer isso. Essa resposta da linha de comando já foi postada em junho, então não há necessidade de repeti-la.
chave ZCK

Não, eu posto a resposta em suas palavras atuais minha edição apenas para melhorar a formatação; e acho que o comando que escrevi é mais claro do que o que foi escrito em junho
Ahmed Abdallah

O modo de interface do TortoiseSVN requer um clique em 'relocar', e não alternar. O que faz sentido, dada a linha de comando. Não tenho certeza do que a opção faria - parecia estar tentando acessar a URL antiga e a nova URL, algo que eu não queria fazer.
Gerard ONeill

12

Para ser mais preciso

svn switch --relocate [complete url of the old repo] [complete url of the new repo] 

Por exemplo:

svn switch --relocate  http://svn.repo.com:9880/website/branches  http://svnrepo.com/web/branches 

3

Usando TortoiseSVN tortoisesvn docs

  1. Vá para a pasta raiz da cópia de trabalho
  2. Clique com o botão direito, clique no submenu TortoiseSVN, clique em Relocate.
  3. Insira o novo caminho

1

Muito simples :

Etapa 1: Abra o prompt de comando / terminal e defina o caminho de trabalho

Etapa 2: execute esta linhasvn switch --relocate http://newurl


0

Eu havia mudado meu servidor svn para forçar o redirecionamento de tudo de HTTP para HTTPS (e poderia ter sido um redirecionamento para qualquer outra URL), e percebi que esse svn relocatecomando estava causando muitos problemas externos. Felizmente descobri que a coisa mais fácil era apenas fazer um svn updatee, devido ao redirecionamento do servidor svn, ele atualizou todos os armazenamentos de URLs na cópia de trabalho local, incluindo os externos.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.