如何通过以下方式解压缩在bundler中指定的gem:git => URL?
我的Gemfile有
gem 'my_gem', :git => 'git@github.com:xxxxx/xxxxx.git'
$ bundle
正确地将gem报告为可用,并且我的代码有效。 $ bundle which my_gem
甚至告诉我宝石的存储位置。但是:
$ gem unpack my_gem
ERROR: Gem 'my_gem' not installed nor fetchable.
$ bundle exec gem unpack my_gem
ERROR: Gem 'my_gem' not installed nor fetchable.
是否可以解压这样安装的宝石?
答案 0 :(得分:4)
为什么需要打开它?你已经有了源代码。指定git存储库的关键是你没有捆绑的gem,而是生成它的源。
只需使用
git clone git://github.com/xxxx/yyy.git
,源代码将位于当前目录的yyy文件夹中。
答案 1 :(得分:3)
此外,您可以使用以下命令打开Gemfile中的任何gem:
bundle open my_gem
答案 2 :(得分:0)
不能完全回答这个问题,但是假设您手边有gem文件,那是一堆gzip文件(与通常情况相反)
$ tar xzf mygem.gem
$ ls
mygem.gem checksums.yaml.gz data.tar.gz metadata.gz
metaddata.gz
是gemspec,data.tar.gz
是所有文件(lib/my/stuff.rb
等)。