Binários de subversão errados em / bin / usr / bin

0

Eu estou trabalhando em um Mac e recentemente atualizado Xcode, dentro desta atualização instala a versão mais recente de subversion 1.9.x como a instalação principal. Isso seria ótimo, mas no trabalho usamos 1.8.x e essa nova versão é incompatível.

Idealmente eu gostaria de mudar o núcleo da subversão de volta para 1.8.x mas não estou claro sobre como progredir. O que eu fiz até agora é instalar a versão correta via gerenciador de pacotes (Homebrew) em /usr/local/opt/subversion .

Isso é bom para o meu IDE porque posso apontar para a pasta ./bin. No entanto, se eu quiser trabalhar no terminal, o que faço frequentemente a versão é 1.9.x.

Como solução alternativa, criei um alias no meu ./bash_profile da seguinte forma %código%.

Agora, quando eu abro o terminal e executo alias svn=/usr/local/opt/[email protected]/bin/svn , obtenho o seguinte.

svn --version

O que é perfeito, mas eu sinto que estou perdendo alguma coisa, há outros binários que eu uso de tempos em tempos e eu detesto usar alias em todos eles. Parece que deveria haver uma maneira melhor, mas não estou muito confiante em mudar as coisas no nível da raiz.

É possível reatribuir a versão de trabalho do subversion. Talvez algo como svn, version 1.8.16 (r1740329) compiled Apr 2 2017, 22:11:27 on x86_64-apple-darwin15.6.0 .

    
por Chris Rymer 22.11.2017 / 00:37

1 resposta

0

Enquanto edita anexando a variável de ambiente $PATH é uma opção em termos de definir a ordem de preferência para os binários que você gostaria de usar. Isso pode não ser totalmente necessário.

Quando você executar svn up do terminal em uma cópia de trabalho com uma subversão incompatível, você receberá a seguinte mensagem.

svn: E155036: Please see the 'svn upgrade' command

A experiência passada de comandos em execução cega me deixa nervoso, mas depois de investigar várias máquinas de colegas de trabalho, fica claro que a incompatibilidade é com a cópia de trabalho e não com o servidor VCS.

Para resolver a incompatibilidade, você pode simplesmente executar svn upgrade . Depois disso, você poderá executar svn up e a atualização deverá prosseguir sem problemas.

Se tudo mais falhar, você ainda poderá forçar uma versão específica do binário svn a ser usada, definindo o caminho para sua pasta do subversion na variável de ambiente $PATH .

por exemplo. export PATH=/usr/local/opt/[email protected]/bin:/usr/bin:/bin:$PATH

O que eu realmente não tive tempo para entender antes é que $PATH contém a localização de quaisquer binários que você deseja que estejam acessíveis na linha de comando. Quanto mais próximo da frente da string for o seu binário de escolha, determina a ordem em que eles são selecionados.

Se uma pasta não estiver mais disponível, acredito que ela deve ser transferida para o próximo local.

    
por 22.11.2017 / 11:01