>
> thanks. what about a directory called .bundle in our app's root folder.
> what does it have and what role does it play ?


It contains a file, config, which is a YAML file that saves the options you
ran bundler with, that way they can become the default.

Sometimes, if you run certain commands, it can contain a cache of your gems.
But that's not usual.

Also, you'll want to put .bundle in your .gitignore, and Gemfile and
Gemfile.lock into your repository UNLESS you're developing a gem, in which
case, you just want the Gemfile. More here:
http://yehudakatz.com/2010/12/16/clarifying-the-roles-of-the-gemspec-and-gemfile/