답변:
나는 당신이 이것을 할 수 있다고 믿습니다.
gem "foo", path: "/path/to/foo"
spring stop
같으면 실제로 문제가 있는지 확인하십시오.
경로를 지정하는 것 외에도 (Jimmy가 언급 한대로) 다음 구성 옵션 을 사용하여 Bundler가 환경에 로컬 젬을 사용하도록 할 수도 있습니다.
$ bundle config local.GEM_NAME /path/to/local/git/repository
두 개의 gem 또는 gem과 rails 앱을 나란히 개발할 때 매우 유용합니다.
그러나 이것은 이미 의존성을 위해 git을 사용하고있을 때만 작동합니다.
# In Gemfile
gem 'rack', :github => 'rack/rack', :branch => 'master'
# In your terminal
$ bundle config local.rack ~/Work/git/rack
문서에서 볼 수 있듯이 .
BUNDLE_PATH
(배포 용 패키지 빌드)를 사용하고 있기 때문에 이것에 문제가 있습니다. 제안한 작업이나 Jimmy의 답변을 할 때 using
실제로는 내 BUNDLE_PATH
폴더에 설치하지 않고 . 나는 이것을 알아낼 수 없었다. 어떤 도움?
bundle config --delete local.GEM_NAME
bundle config disable_local_branch_check true
Bundler가 브랜치에 대해 불만 을 설정해야합니다 . 수표가 잘못된 커밋을 막는 것으로 간주되므로 조심하십시오 Gemfile.lock
. 여기 문서 : bundler.io/v1.12/git.html
작업중 인 경우 git으로 로컬 gem을 참조 할 수도 있습니다.
gem 'foo',
:git => '/Path/to/local/git/repo',
:branch => 'my-feature-branch'
그런 다음 변경되면 실행합니다.
bundle exec gem uninstall foo
bundle update foo
그러나 모든 사람이이 두 단계를 수행해야하는지 잘 모르겠습니다.
bundle uninstall <gem> && bundle install
앱에 반영하려는 모든 변경 사항에 대해
Rails 프로젝트에서 로컬 gem 저장소를 사용하려면 다음 단계를 따르십시오.
gem 폴더가 git 저장소인지 확인하십시오 (gem 폴더에서 명령이 실행됩니다)
git rev-parse --is-inside-work-tree
저장소 경로 가져 오기 (gem 폴더에서 명령이 실행 됨)
git rev-parse --show-toplevel
레일스 애플리케이션에 대한 로컬 대체 설정
bundle config local.GEM_NAME /path/to/local/git/repository
여기서 GEM_NAME
gem의 이름이며 /path/to/local/git/repository
명령의 출력입니다.2
응용 프로그램 Gemfile
에서 다음 줄을 추가하십시오.
gem 'GEM_NAME', :github => 'GEM_NAME/GEM_NAME', :branch => 'master'
달리기 bundle install
는 다음과 같은 것을 제공해야합니다.
Using GEM_NAME (0.0.1) from git://github.com/GEM_NAME/GEM_NAME.git (at /path/to/local/git/repository)
GEM_NAME
보석의 이름은 어디에 있습니까?/path/to/local/git/repository
관점에서가2
마지막으로을 실행 bundle list
하지 말고 gem list
다음과 같이 표시되어야합니다.
GEM_NAME (0.0.1 5a68b88)
GEM_NAME
보석의 이름은 어디에 있습니까
몇 가지 중요한 경우를 사용하여 관찰하고 있습니다.
Rails 4.0.2
ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]
Ubuntu 13.10
RubyMine 6.0.3
RubyMine
로컬 보석을 외부 라이브러리로 표시하지 않는 것 같습니다 . 버그에 대한 자세한 정보는 여기 및 여기 에서 찾을 수 있습니다. stop/start
Rails 서버를 사용해야 합니다version
gem을 변경하면 stopping/starting
Rails 서버에서 오류가 발생합니다. 이 문제를 해결하기 위해 레일 애플리케이션에서 다음 Gemfile
과 같이 gem 버전을 지정합니다 .
gem 'GEM_NAME', '0.0.2', :github => 'GEM_NAME/GEM_NAME', :branch => 'master'
source : source: 'https://source.com', git repository (:github => 'git/url')
및 local path로 gem을 참조 할 수 있습니다 :path => '.../path/gem_name'
. 이 기사에서 Gemfile과 그 사용법에
대해 자세히 배울 수 있습니다 .