2012-06-28 3 views
4

현재 Gemfile을 사용하여 git 기반 보석을 설치하고 결과적으로 ruby ​​/ ruby ​​명령을 사용하려면 '번들 설치'를 실행하려고합니다. 최신 버전의 RVM (1.14.3)과 함께 제공됩니다.RVM을 사용하여 git gem에 '번들 설치'를 사용할 때 'gem list'에서 보석을 찾을 수 없습니다.

나는 다른 모든 보석들이 .rvm/gems/gems/gems/gems/gems에 설치되는 동안 bundler가 .rvm/gems/ruby-1.9.3-p194 @ something/bundler/gems에 git gem을 설치하고 있다고 믿습니다. [email protected]/gems. 결과적으로 '번들 목록'에는 보석이 표시되지만 '보석 목록'에는 표시되지 않습니다.

여기에 의견이 있으십니까? 나는 모든 것을 실행하기 위해 번들을 사용하지 않는 것을 선호한다.

답변

6

번들러는 보석과 응용 프로그램을 묶는 데 사용됩니다. 시스템 보석으로 사용하는 것은 이치에 맞지 않습니다. 불행히도, non-bundler gem 시스템은 git 기반 보석을 설치하는 직접적인 방법을 제공하지 못합니다. (실제로 이전에 이것에 관한 질문을했습니다, Is it possible to directly install a gem from a git repository?을보십시오). 대신, 당신은 세 단계로 수동으로 할 필요가 :

  1. 복제 보석의 REPO (이것은 GitHub의 저장소를 가정하지만, 그냥 오른쪽 자식의 repo 위치를 대체 어디서나 호스팅 저장소에 대해 작동합니다).

    복제 된 보석의 repo 디렉토리에
    git clone git://github.com/user/gem.git 
    
  2. 이동하여 보석을 구축 (이 또한 종속성을 확인하고,이 때문에 누락 된 종속성 설치에 실패하는 경우 경고합니다 -이 경우 단지 종속성을 설치하고 다시 시도).

    rake gem 
    

    또는 그 경우

    이 작동하지 않습니다

    gem build gem.gemspec 
    
  3. 이것은 pkg/gem-1.2.3.gem 같은 이름 (때로는이 같은 pkg 디렉토리에 구축 할 예정으로 파일을 생성해야, 때로는 그것을 만들 것이다 보석 repo 루트 디렉토리에 있음). 이제 설치하실 수 있습니다.

    gem install pkg/gem-1.2.3.gem 
    
+0

나는 더 많은 연구를하고 http://stackoverflow.com/에서 주석을 발견이 티켓이 https://github.com/mpapis/rubygems-bundler/issues/21 – mpapis

+0

관련 추측 질문/3175511/why-is-bundler-not-installing-gems-stored-in-get-repo- 적절하게 참조 http://yehudakatz.com/2010/04/12/some-of-the-problems-bundler -solves/- 나는 보석과 번들러가 다르다는 것을 알고 있지만 보석/번들러/보석 디렉토리를 동일한 디렉토리로 만들 수있는 방법을 정말로 찾고 있습니다. 그래서 보석은 설치업자에게 gig 보석을 설치할 수 있습니까? –

관련 문제