我有两个git模块A和B. B是A的子模块(因此是子目录)。我在B中有一些我需要从A调用的ruby脚本。模块A本身没有任何Ruby代码(所以不需要Gemfile)。我在B中有一个Gemfile,它列出了B中脚本的依赖关系。但是要从A调用这些脚本,我必须将Gemfile移动到A:
cd A
mv B/Gemfile .
bundle update
bundle install
bundle exec ruby B/someScript.rb
有没有办法可以在B中调用脚本而无需先将Gemfile移动到A?
答案 0 :(得分:1)
只需将终端移动到子文件夹 - B(子模块)并运行脚本。无论如何A没有任何ruby代码,所以在运行脚本时将终端移动到B子文件夹很好。这将很容易管理子模块。
cd A/B
bundle update
bundle install
bundle exec ruby someScript.rb
如果你真的希望它在A中,那么按照下面的Gemfile
的Gemfile
# Gemfile inside project A
source 'http://rubygems.org/'
eval_gemfile File.join(File.dirname(__FILE__), "B/Gemfile")