Неправильные двоичные файлы Subversion в /bin /usr/bin

Неправильные двоичные файлы Subversion в /bin /usr/bin

Я работаю на Mac и недавно обновил Xcode, в этом обновлении он устанавливает последнюю версию в subversion 1.9.xкачестве основной установки. Это было бы нормально, но на работе мы используем 1.8.xи эта новая версия несовместима.

В идеале я хотел бы изменить основную версию Subversion обратно на 1.8.x, но я не совсем понимаю, как это сделать. На данный момент я установил правильную версию через менеджер пакетов (Homebrew) в /usr/local/opt/subversion.

Это нормально для моей IDE, потому что я могу указать на папку ./bin. Однако, если я хочу работать в терминале, что я делаю часто, то версия будет 1.9.x.

В качестве обходного пути я создал псевдоним следующим ./bash_profileобразом .alias svn=/usr/local/opt/[email protected]/bin/svn

Теперь, когда я открываю терминал и запускаю, svn --versionя получаю следующее.

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

Это идеально, но я чувствую, что мне чего-то не хватает, есть другие двоичные файлы, которые я использую время от времени, и мне не хочется давать им всем псевдонимы. Кажется, должен быть способ получше, но я не слишком уверен в перемещении вещей на уровне корня.

Можно ли переназначить рабочую версию subversion. Может быть что-то вроде use svn --path .....

решение1

При редактировании добавление $PATHпеременной окружения является опцией в плане установки порядка предпочтения для двоичных файлов, которые вы хотели бы использовать. Это может быть не совсем необходимо.

При запуске svn upиз терминала рабочей копии с несоответствующей версией Subversion вы получите следующее сообщение.

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

Прошлый опыт слепого запуска команд заставляет меня нервничать, но после исследования нескольких машин моих коллег стало ясно, что несовместимость связана с рабочей копией, а не с сервером VCS.

Чтобы устранить несоответствие, вы можете просто запустить svn upgrade. После этого вы сможете запустить svn upи обновление должно пройти без проблем.

Если все вышеперечисленное не помогло, вы все равно можете принудительно svnиспользовать определенную версию двоичного файла, указав путь к папке subversion в $PATHпеременной среды.

напримерexport PATH=/usr/local/opt/[email protected]/bin:/usr/bin:/bin:$PATH

На что я не тратил время, чтобы понять до сих пор, так это на то, что $PATHсодержит местоположение любых двоичных файлов, которые вы хотите сделать доступными из командной строки. Чем ближе к началу строки находится выбранный вами двоичный файл, тем выше порядок их выбора.

Я считаю, что если папка больше недоступна, она должна быть перемещена в следующее местоположение.

Связанный контент