Find file
Fetching contributors…
Cannot retrieve contributors at this time
37 lines (23 sloc) 1.11 KB

Seattle.rb Project Synchronizer

A simple, stupid tool for keeping GitHub mirrors of Seattle.rb Perforce projects. This is only for Seattle.rb admin folks, I'm just documenting it here so I don't forget anything.


Make sure you have Python, vendor/git-p4 needs it. You'll also need to be set up in Zenspider's Perforce repo.

Tell Git about your Perforce config:

$ git config --global git-p4.user YOUR_USERNAME
$ git config --global git-p4.password YOUR_PASSWORD
$ git config --global git-p4.port
$ git config --global git-p4.client YOUR_CLIENT

Synchronizing Existing Stuff

$ rake sync

This pulls changes for everything listed in projects.txt into repositories under projects/ and pushes to GitHub. It creates new GitHub repositories when necessary.


  • The current tasks are stupid: Only the dev branch is pulled over. If you care, find a way to infer branches and pull 'em over.

  • Error handling and recovery are nonexistent.

  • GitHub stuff is done via curl, because I Just Don't Care.