Binários subversion errados em /bin /usr/bin

Binários subversion errados em /bin /usr/bin

Estou trabalhando em um Mac e atualizei recentemente o Xcode, nesta atualização ele instala a versão mais recente subversion 1.9.xcomo a instalação principal. Isso seria bom, mas no trabalho usamos 1.8.xe esta versão mais recente é incompatível.

Idealmente, eu gostaria de mudar o subversion principal de volta para 1.8.x, mas não tenho certeza de como progredir. O que fiz até agora foi instalar a versão correta através do gerenciador de pacotes (Homebrew) no /usr/local/opt/subversion.

Isso é bom para meu IDE porque posso apontar para a pasta ./bin. Porém, se eu quiser trabalhar no terminal, o que faço com frequência, a versão é 1.9.x.

Como solução alternativa, criei um alias no meu ./bash_profileexemplo a seguir .alias svn=/usr/local/opt/[email protected]/bin/svn

Agora, quando abro o terminal e executo, svn --versionrecebo o seguinte.

svn, version 1.8.16 (r1740329) compiled Apr 2 2017, 22:11:27 on x86_64-apple-darwin15.6.0

O que é perfeito, mas sinto que está faltando alguma coisa, há outros binários que uso de vez em quando e detesto apelidar todos eles. Parece que deveria haver uma maneira melhor, mas não estou muito confiante em mover as coisas no nível raiz.

É possível reatribuir a versão funcional do Subversion. Talvez algo como use svn --path .....

Responder1

Durante a edição, anexar a $PATHvariável de ambiente é uma opção em termos de definir a ordem de preferência para os binários que você gostaria de usar. Isto pode não ser totalmente necessário.

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

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

A experiência anterior de execução cega de comandos 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 upe a atualização deverá prosseguir sem problemas.

Se tudo mais falhar, você ainda pode forçar o uso de uma versão específica do svnbinário, definindo o caminho para sua pasta Subversion na $PATHvariável de ambiente.

por exemploexport PATH=/usr/local/opt/[email protected]/bin:/usr/bin:/bin:$PATH

O que eu realmente não perdi tempo para entender até agora é que $PATHcontém a localização de quaisquer binários que você deseja que sejam acessíveis a partir da linha de comando. Quanto mais próximo da frente da string estiver o binário de sua escolha, determinará a ordem em que eles serão selecionados.

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

informação relacionada