I'm not sure that there's really any way to give a firm recommendation either way here. You can, after all, simply add<p><pre><code> :require => false
</code></pre>
to any gems which you don't want to require with Bundler.require.<p>> Manually requiring dependencies at the top of every file very explicitly tells you and anyone else exactly what dependencies that file has.<p>While I don't disagree with this statement, I don't really know of any way to enforce it (certainly using Bundler.setup won't do so). You're always going to have everything that has been required elsewhere "pre-required" for you. I'll often start out explicitly requiring everything that a file needs when I start a project, and then end stopping when I look back at some file and notice that it lacks require statements for half the stuff it needs.