Não é possível executar comandos svn em uma versão do repositório 1.7

1

Não consigo executar comandos svn em um repositório existente.

A execução de svn status resulta nisto:

  

gene @ gene-ThinkPad-T60p: ~ / Dropbox / CDS $ svn status   svn: O caminho '.' parece ser parte de um Subversion 1.7 ou superior
  cópia de trabalho. Por favor, atualize seu cliente Subversion para usar este   cópia de trabalho.

Depois de procurar no Google, achei que a coisa certa a fazer seria executar svn upgrade (mas isso era uma falha, a atualização não atualizava sua instalação do SVN, atualizava a versão implícita no projeto). De qualquer forma, a atualização não está disponível na versão 1.6

  

gene @ gene-ThinkPad-T60p: ~ / Dropbox / CDS $ svn upgrade
  Comando desconhecido: 'upgrade'
  Digite 'svn help' para uso.

Eu tentei atualizar o subversion (também conhecido como svn nas linhas de comando) Eu tentei sudo apt-get update then sudo apt-get upgrade , sem efeito. Eu também tentei sudo apt-get install subversion , sem efeito.

Eu baixei o código-fonte e tentei criar subversão, mas recebi esse erro depois de executar ./configure

... truncado ...

  

/ bin / grep -E verificando se ln -s funciona ... sim, verificando se um   Instalação compatível com BSD ... / usr / bin / install -c configure: Apache
  Configuração da biblioteca de tempo de execução portátil (APR) para APR ... no
  configure: AVISO: APR não encontrado O Apache Portable Runtime (APR)
  biblioteca não pode ser encontrada. Por favor, instale APR neste sistema e
  configure o Subversion com a opção apropriada --with-apr.

  Você provavelmente precisa fazer algo parecido com o Apache Portable Review   Biblioteca do Runtime Utility (APRUTIL) e, em seguida, configure o Subversion com o
  ambas as opções --with-apr e --with-apr-util.

  configure: error: nenhum APR adequado encontrado

Eu já tinha lido algumas páginas sobre o utilitário APR no readme do SVN, mas parecia muito envolvido. Talvez o APRUTIL seja para instalar a versão do servidor do SVN em vez do cliente?

Este comando sudo apt-get install libapache2-svn diz que eu já estou na versão mais atual.

(edite :) Quando tento sudo apt-get install subversion , diz que estou na versão mais recente

  

Lendo listas de pacotes ... Concluído
  Construindo árvore de dependências
  Lendo informações do estado ... Concluído
  Subversion já é a versão mais recente.
  0 atualizado, 0 recém-instalado, 0 para remover e 1 não atualizado.

Mas, minha versão atual (baseada em svn --version ) é svn, versão 1.6.17 (r1128011) compilada em 26 de junho de 2013, 20:44:02. Isso parece recente para mim, mas de acordo com o site eles já estão no 1.8.

Agradecemos antecipadamente por qualquer ajuda.

    
por geneorama 28.08.2013 / 23:27

2 respostas

0

Minhas desculpas, mas eu não fiz um trabalho muito bom em fazer a pergunta em primeiro lugar. Em minha defesa, isso se deveu a várias tentativas diferentes de resolver o problema e perdi o controle das etapas.

Mas, aqui está a resposta de porque os comandos do SVN não estavam funcionando e porque o upgrade não estava funcionando.

Meu problema é que eu estava usando o Dropbox para sincronizar meus repositórios entre computadores, e acidentalmente coloquei um repositório do SVN 1.7 em uma máquina SVN 1.6.

O SVN disse que eu precisava atualizar, mas a atualização do SVN só está disponível em 1.7, então recebi o erro "o comando não existe" (de alguma forma a versão 1.6 sabe que deve existir, porque está na mensagem de erro !! !)

A outra complicação foi que eu não consegui atualizar para o 1.7 nesta máquina usando os típicos comandos apt-get (update / upgrade / install), porque o binário não está disponível para o Ubuntu 12.04 (LTS) apesar dos recursos padrão do PPA .

Para atualizar para o SVN 1.7 no Ubuntu 12.04, você precisa adicionar um novo PPA. Instruções podem ser encontradas aqui: Onde posso encontrar um binário do Subversion 1.7? ?
Observação: veja mais de uma resposta no link acima. Há um ppa disponível na equipe do SVN e, no momento da redação, essa não foi a resposta selecionada

Pelo que li (e minha experiência pessoal) é possível sincronizar projetos SVN e Git em máquinas usando o Dropbox, mesmo entre sistemas operacionais. No entanto, provavelmente não é uma boa ideia, e a mudança nas versões do SVN causou alguns grandes problemas para mim. Agora, vários dos meus arquivos rastreados foram sobrescritos no projeto e tenho que passar por um processo confuso de verificar todo o projeto novamente e sincronizar manualmente os arquivos não versionados. Os arquivos sobrescritos foram substituídos por arquivos em branco com o nome original, mas sem conteúdo (e parecem ser o SVN a versão mais atual, portanto, uma reversão não os reverte).

Sim, sei que manter arquivos não versionados não é o ideal, mas tenho boas razões para isso.

    
por geneorama 29.08.2013 / 21:20
1

Há uma pequena reviravolta. Você diz que tenta svn update , mas o código mostra svn upgrade , que falha, então você diz "então eu tentei svn upgrade ".

Meu instinto diz que você tem uma cópia de trabalho na versão 1.7 copiada de algum lugar e a versão 1.6 do subversion não consegue lidar com isso. A solução mais simples seria svn checkout uma nova cópia de trabalho do repository .

Se você realmente precisar fazer o downgrade de sua cópia de trabalho de 1,7 para 1,6, então você tem um problema , eu estou com medo.

O APR é uma biblioteca de propósito geral que foi desenvolvida para o servidor http Apache, mas é usada por todos os programas do subversion. Portanto, você precisa instalá-lo para construir qualquer software de subversão. O libapache-svn é um assunto diferente.

    
por Johannes 29.08.2013 / 00:44