【发布时间】:2015-09-02 21:56:29
【问题描述】:
我已经分叉了一个 gem,它托管在 Github 上。
然后,在 Gemfile 中,这就是我所拥有的:
gem 'mongoid-scroll', git: 'https://github.com/bgvo/mongoid-scroll.git'
每当我使用 Pry gem-opem 命令对 gem 进行更改时,更改都会保存在以下目录下:
/Users/borjagvo/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/bundler/ruby/2.1.0/bundler/gems/
有些事情让我很困惑:
1) 在这个目录中有两个mongoid-scroll gems(mongoid-scroll-7e23e72653c6 和mongoid-scroll-23bc60ce76bd)而不是只有一个。我认为这个目录中的 gem 是运行 bundler 时使用的 gem。 bundler 如何确定这是使用的一个而不是另一个?
2) 如果我尝试将更改推送到 Github 存储库:
Borjas-MacBook-Pro:mongoid-scroll-7e23e72653c6 borjagvo$ git push
Counting objects: 10, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (9/9), done.
Writing objects: 100% (10/10), 1.00 KiB | 0 bytes/s, done.
Total 10 (delta 6), reused 0 (delta 0)
To /Users/borjagvo/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/bundler/ruby/2.1.0/cache/bundler/git/mongoid-scroll-f814a84d6332ef5d28cf5db04da93b434e01f07b
d8f9f91..696bdce master -> master
我发现 Github 存储库不是上传更改的地方。
执行git config --get remote.origin.url查看来源:
Borjas-MacBook-Pro:mongoid-scroll-7e23e72653c6 borjagvo$ git remote show origin
* remote origin
Fetch URL: /Users/borjagvo/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/bundler/ruby/2.1.0/cache/bundler/git/mongoid-scroll- f814a84d6332ef5d28cf5db04da93b434e01f07b
Push URL: /Users/borjagvo/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/bundler/ruby/2.1.0/cache/bundler/git/mongoid-scroll- f814a84d6332ef5d28cf5db04da93b434e01f07b
HEAD branch: master
Remote branch:
master tracked
Local branch configured for 'git pull':
master merges with remote master
Local ref configured for 'git push':
master pushes to master (up to date)
什么是从捆绑器使用的 gem 将更改上传到 Github 中的分叉存储库的好方法(请记住,我使用的是 Pry 命令gem-open)。
谢谢。
【问题讨论】:
标签: ruby-on-rails git github gem bundler