Externals

Quickly freeze and unfreeze external git dependencies.

Installation


sudo gem install winton-externals

Configuration

Create config/externals.yml:


acts_as_archive:
  repo: git://github.com/winton/acts_as_archive.git
  path: vendor/plugins
rails:
  repo: git://github.com/rails/rails.git
  path: vendor

Freeze or unfreeze

You can run either of these for the first time, depending on what you want:


externals freeze
externals unfreeze

If you only want to freeze one of the items in config/externals.yml


externals freeze acts_as_archive
externals unfreeze acts_as_archive

The usual flow is to unfreeze, commit to the external, freeze, and commit to the parent project.

Your .git directories will be zipped and stored in /tmp when frozen, and moved back to the external when unfrozen.

Are my externals frozen?

When you want to know the status of your externals:


externals status