Pergunta

Estou usando o TortoiseSVN no repositório SourceForge SVN.Gostaria de mover um arquivo de uma pasta para outra para manter seu histórico de revisões.Isso é possível?Se sim, como você faz isso?

(Minha estratégia atual tem sido copiar o arquivo para a nova pasta, fazer check-in e, em seguida, excluir o arquivo da pasta atual.)

Foi útil?

Solução

O Subversion possui suporte nativo para movimentação de arquivos.

svn move SOURCE DESTINATION

Veja a ajuda online (svn help move) para mais informações.

Outras dicas

Confira a seção 5.14.2.Movendo arquivos e pastas (ou veja "move" no índice da ajuda) da ajuda do TortoiseSVN.Você faz um movimento arrastando para a direita.Ele também menciona que você precisa confirmar a partir da pasta pai para torná-la "uma" revisão.Isso funciona para fazer alterações em uma cópia de trabalho.

(Observe que os itens SVN na imagem a seguir só aparecerão se a pasta de destino já tiver sido adicionada ao repositório.)

tortoise move menu

Você também pode fazer a movimentação através do Repo Browser (seção 5.23.O navegador do repositório da ajuda).

Com o TortoiseSVN eu apenas movo o arquivo no disco.

Quando vou confirmar minhas alterações, seleciono o arquivo ausente e o novo e seleciono "Movimento de reparo"no menu do botão direito:

enter image description here

Isso significa que posso deixar meu IDE movimentar arquivos e usá-lo com ferramentas de refatoração sem perder o histórico.

No TortoiseSVN, clique com o botão direito em algum lugar e vá TortoiseSVN > Repo Browser para abrir o repositório.

Tudo o que você precisa fazer é arrastar e soltar o arquivo de uma pasta para onde deseja.Ele solicitará que você adicione uma mensagem de commit e o padrão será "Arquivo/pasta movido remotamente"

Usando o TortoiseSVN, apenas clico com o botão direito e arrasto a pasta de um local para outro.Quando você liberar o clique com o botão direito do mouse, você terá a opção de "o arquivo de versão para mover SVN". No entanto, acredito que o SVN não faz nada "sofisticado" lá, mas simplesmente exclui o arquivo no local anterior e o adiciona ao novo local.

Para cliente TortoiseSVN:

  1. Selecione os arquivos que deseja mover,
  2. Certo clique e arraste os arquivos para a pasta para a qual deseja movê-los,
  3. Uma janela aparecerá depois que você soltar o recurso de arrastar e soltar em uma pasta.Clique "SVN Move item(s) versionado(s) aqui",
  4. Depois de clicar acima, a caixa de mensagem da janela de commit aparecerá.Digite uma mensagem e envie.

Agora você terminou.

Corte o arquivo por meio do menu de contexto do sistema operacional, como você costuma fazer, e em vez de colar normalmente, clique com o botão direito para abrir o menu de contexto e escolha TortoiseSVN -> Paste (certifique-se de confirmar a partir do root para incluir arquivos novos e antigos no commit).

eu acho que no navegador svn no tortoisesvn você pode simplesmente arrastá-lo de um lugar para outro.

Como você está usando o Tortoise, você pode conferir este link no LosTechies.Deve ser quase exatamente o que você está procurando.

http://www.lostechies.com/blogs/joshua_lockwood/archive/2007/09/12/subversion-tip-of-the-day-moving-files.aspx

Também pode ser chamado de "renomear" pelo tortoise, mas svn move é o comando no cliente svn barebones.

Se não me engano, a partir da versão 1.5, o SVN pode rastrear arquivos\pastas movidos.No TortoiseSVN, o uso pode mover arquivos arrastando e soltando.

Se você estiver movendo pastas por meio do Repository Browser, não haverá opção Mover ao clicar com o botão direito;a única maneira é arrastar e soltar.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top