/bin /usr/bin에 Subversion 바이너리 오류가 있습니다.

/bin /usr/bin에 Subversion 바이너리 오류가 있습니다.

저는 Mac에서 작업하고 최근 Xcode를 업데이트했는데 이번 업데이트에서는 최신 버전이 subversion 1.9.x핵심 설치로 설치되었습니다. 괜찮습니다. 하지만 직장에서 1.8.x우리가 사용하고 있는 이 새 버전은 호환되지 않습니다.

이상적으로는 Core Subversion을 1.8.x로 다시 변경하고 싶지만 어떻게 해야 할지 잘 모르겠습니다. 지금까지 내가 한 일은 패키지 관리자(Homebrew)를 통해 올바른 버전을 /usr/local/opt/subversion.

./bin 폴더를 가리킬 수 있기 때문에 이는 내 IDE에 적합합니다. 그러나 터미널에서 작업하려면(자주 수행하는 작업) 버전은 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명령줄에서 액세스하려는 바이너리의 위치가 포함되어 있다는 것입니다. 선택한 바이너리가 문자열 앞쪽에 가까울수록 선택되는 순서가 결정됩니다.

폴더를 더 이상 사용할 수 없으면 다음 위치로 계단식으로 이동해야 한다고 생각합니다.

관련 정보