2008-09-23 2 views
5

그래서 문제가 있습니다. 나는 당신이 그것을하기로되어 있지 않더라도 내 얼어 붙은 보석과 선반을 조사했다. 나는 그것이 쉽고 어쨌든 큰 거래가 아닐 것이라고 생각했다. 음, 나중에 레일을 업데이트하고 그렇게함으로써 vendor/rails 디렉토리의 모든 .svn 파일을 삭제합니다. 나는 내가 실제로 이되어야한다고 들었다. 나는 나의 공급 업체 디렉토리에 svn : externals와 관련이있다. 내가해야 할 일이 정확히 무엇이며, 카프리 스트라 노는 나의 레오에 없으면 내 냉동 된 보석을 사용합니까? 고정 된 보석을 사용하지 않는 경우 어떻게하면 .svn 파일을 올바르게 재생성 할 수 있습니까? 이 다시 발생하기 때문입니다.Subversion과 관련하여 공급 업체 디렉토리를 어떻게해야합니까?

감사합니다.

답변

3
  1. .svn 디렉토리를 복구하려면 svn update을 실행하십시오. 그들은 돌아올거야.

  2. 그냥 내 보낸 보석을 체크인합니다.나는 vendor/gems 디렉토리에서 gem unpack <gemname>을 사용하고 거기에서 svn addcommit을 사용합니다.

  3. 무엇이든 vendor/plugins 또는 vendor/rails 피스톤을 사용하여 추적합니다. 예를 들어, 내가 거기에 레일을 얻는 방법은 다음과 같습니다

    % piston import http://dev.rubyonrails.org/svn/rails/tags/rel_2-0-2/ vendor/rails

피스톤 사용 gem install piston를 얻으려면.

참고 Rails가 계속 git를 사용하고 Subversion 저장소를 업데이트하지 않을 수 있으므로 피스톤을 교체하기 위해 다른/더 나은 솔루션을 찾아야 할 것입니다.

+0

창문에 피스톤을 설치할 수 있습니까? 내 전복이 창문에있다. – sivabudh

4

개인적으로 나는 공급 업체 디렉토리를 관리하기 위해 Piston을 사용하는 것이 부분적입니다.

1

면책 조항 : Ruby/Rails에 대해 모르겠으므로 (내가 컴파일 된 바이너리 또는 토큰 화 된 소스라고 생각할지라도) 고정 된 보석이 무엇인지 모르겠지만 Subversion을 잘 알고 있습니다.

.svn 디렉토리에는 Subversion "bookkeeping"만 있습니다. 그곳에는 회복 할 수없는 것이 없습니다.

.svn 파일을 삭제해도 문제가되지 않습니다. .svn 디렉토리가없는 디렉토리가 Subversion 작업 복사본 (체크 아웃을 한 디렉토리)의 디렉토리 트리 안에 있으면 해당 디렉토리를 삭제하고 svn 업데이트를 수행하면 다시 만들어집니다.

전체 트리에 .svn 파일이 누락 된 경우 전체 트리를 삭제하고 svn 체크 아웃을 다시 수행하십시오.

svn : externals은 "심볼릭 링크"와 같습니다. 프로젝트 A를 사용하는 프로젝트 A와 프로젝트 B가 있습니다. 프로젝트 A의 라이브러리 디렉토리를 참조하는 svn : external 속성을 추가하면 프로젝트 B를 체크 아웃 할 때마다 프로젝트 A의 라이브러리 디렉토리가 자동으로 저장됩니다 그 안에. 예를 들어, 나는 종종 "thirdparty"라는 디렉토리를 가지고 있는데, 여기에는 evn : Subversion의 다른 프로젝트에 대한 외부 참조를 포함하여 다른 곳의 라이브러리에 대한 외부를 보유하고 있습니다.

이와 같은 버전 문제를 해결하기위한 팁 중 하나는 라이브러리 (또는 고정 된 보석)에 대해 별도의 릴리스 디렉토리를 갖는 것이고, 필요한 프로젝트에서는 해당 릴리스 디렉토리에 대한 svn : external 참조를 사용하십시오. 새 릴리스가 나오면 svn : external 속성을 새 릴리스 디렉토리와 svn update를 가리 키도록 변경하십시오.

2

나는 SVN에 대해 조언을해야 할 것 : 외관을 두 가지 이유

에 대한
  1. 당신이 배포 할 때

  2. 무슨 일 그 svn을 서비스에 도달 할 수있는 환경으로 배포 될 수

    및 그 svn 외부는 아래로 있습니까?

제 조언은 피스톤 또는 보석을 사용하여 공급 업체 트리에서 생산 의존성을 관리하고 관리하는 것입니다.

관련 문제