Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <h1>Bundler before v1.2</h1> <p>Via Gemfile,</p> <pre><code>group :development, :test do gem 'example', :path =&gt; "~/path/to/gems/example" end group :production do gem 'example', :github =&gt; 'example/example', :branch =&gt; 'example_feature' end </code></pre> <p>...or, use relative path to the gem and make sure Heroku see the gem in same location,</p> <pre><code>gem 'example', :path =&gt; "../../gems/example" </code></pre> <p>...or, try playing with <code>--deployment</code> flag in bundler <a href="http://bundler.io/v1.3/deploying.html" rel="nofollow">http://bundler.io/v1.3/deploying.html</a>, it should bundle your gem sources with the app which you can then commit to your app's git so in theory Heroku should then use the local copy and not use git to fetch the gem sources (I'm saying in theory because Heroku has its own quirks)</p> <h1>Bundler v1.2 and beyond</h1> <p><a href="http://bundler.io/v1.2/man/bundle-config.1.html#LOCAL-GIT-REPOS" rel="nofollow">http://bundler.io/v1.2/man/bundle-config.1.html#LOCAL-GIT-REPOS</a> says</p> <blockquote> <p>Bundler also allows you to work against a git repository locally instead of using the remote version. This can be achieved by setting up a local override:</p> <p><code>bundle config local.GEM_NAME /path/to/local/git/repository</code></p> <p>For example, in order to use a local Rack repository, a developer could call:</p> <p><code>bundle config local.rack ~/Work/git/rack</code></p> <p>Now instead of checking out the remote git repository, the local override will be used. Similar to a path source, every time the local git repository change, changes will be automatically picked up by Bundler. This means a commit in the local git repo will update the revision in the Gemfile.lock to the local git repo revision. This requires the same attention as git submodules. Before pushing to the remote, you need to ensure the local override was pushed, otherwise you may point to a commit that only exists in your local machine.</p> <p>Bundler does many checks to ensure a developer won't work with invalid references. Particularly, we force a developer to specify a branch in the Gemfile in order to use this feature. If the branch specified in the Gemfile and the current branch in the local git repository do not match, Bundler will abort. This ensures that a developer is always working against the correct branches, and prevents accidental locking to a different branch. Finally, Bundler also ensures that the current revision in the Gemfile.lock exists in the local git repository. By doing this, Bundler forces you to fetch the latest changes in the remotes.</p> </blockquote>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload