Managing git submodules with git.rake

Hey all,

If you’re like me and use git submodules heavily (I vendor everything,
and every plugin is a submodule), you might like to hear about code
published this morning to make it easier to manage multiple git
submodules in a shared-server environment.

It’s imaginatively titled ‘git-rake’, and it does Good Things like:

  • aggregates submodule commit logs into the superproject commit log
  • abbreviates output for git-status and other common commands (filters
    out what you don’t need to see)
  • ensures you don’t publish references to local-only submodule commits
    (which, if you haven’t done it, is painful)
  • intelligently synchronizes all submodules with the shared repo
    server (no unneeded network requests)
  • allows arbitrary commands to be iterated over all submodules
  • a few other nice sanity checks and commands

If you think the rake tasks might be useful, or you’re wondering why
dealing with many submodules can be a pain, check out the announcement

and, of course, the github project:

We've been using it internally at my company, Pharos Enterprise Intelligence (, for the last 5 months and it's been a huge timesaver for us (each of our client projects have 14+ submodules, so that's motivation for you). We've been looking for opportunities to open-source some of our code, and hey, this is where we're starting.

Comments welcome.


This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs