public
Fork of evilchelu/braid
Description: Simple tool to help track git and svn vendor branches in a git repository
Homepage: http://github.com/evilchelu/braid/wikis/home
Clone URL: git://github.com/piotrb/braid.git
braid /
name age message
file .gitignore Tue Apr 29 09:24:36 -0700 2008 ignore gem build output [evilchelu]
file LICENSE Wed Jul 16 11:23:45 -0700 2008 Swipe files in root [norbert]
file README.textile Loading commit data...
file Rakefile Sat Sep 06 14:47:33 -0700 2008 Separate integration tests [norbert]
directory bin/ Wed Nov 19 17:56:44 -0800 2008 added remote removal on a braid remove added an... [piotrb]
file braid.gemspec
directory lib/
directory test/
README.textile

Braid

Braid is a simple tool to help track git and svn vendor branches in a git repository.

The project homepage is at http://github.com/evilchelu/braid/wikis/home

Requirements

  • git 1.6+ (and git-svn if you want to mirror svn repositories)
  • main >= 2.8.0
  • open4 >= 0.9.6

Installing using rubygems – official releases

gem install braid

Installing using rubygems – development releases

gem sources -a http://gems.github.com gem install evilchelu-braid

Installing from source

git clone git://github.com/evilchelu/braid.git cd braid gem build braid.gemspec sudo gem install braid-x.y.z.gem

Quick usage – ruby project

Let’s assume we’re writing something like gitnub that needs grit in lib/grit. Initialize the repo (nothing braid related here):

git init gritty cd gritty touch README git add README git commit -m “initial commit”

Now let’s vendor grit:

braid add git://github.com/mojombo/grit.git lib/grit

And you’re done! Braid vendored grit into lib/grit. Feel free to inspect the changes with git log or git show.

If further down the line, you want to bring new changes from grit in your repository, just update the mirror:

braid update lib/grit

Quick usage – rails project

Let’s assume you want to start a new rails app called shiny. Initialize the repo (nothing braid related here):

git init shiny cd shiny touch README git add README git commit -m “initial commit”

Vendor rails (this might take a while because the rails repo is huge!):

braid add git://github.com/rails/rails.git vendor/rails

Create your new rails app (nothing braid related here):

ruby vendor/rails/railties/bin/rails . git add . git commit -m “rails .”

Add any plugins you might need:

braid add git://github.com/thoughtbot/shoulda.git -p braid add git://github.com/thoughtbot/factory_girl.git -p braid add git://github.com/mbleigh/subdomain-fu.git -p

And you’re done! Braid vendored rails and your plugins. Feel free to inspect the changes with git log or git show.

If further down the line, you want to bring new changes from rails in your repository, just update the mirror:

braid update vendor/rails

Or, if you want all mirrors updated:

braid update

More usage

Use the built in help system to find out about all commands and options:

braid help braid help add # or braid add —help

You may also want to read Usage and examples.

Troubleshooting

Check Troubleshooting if you’re having issues.

Contributing

We appreciate any patches, error reports and usage ideas you may have. Please submit a lighthouse ticket or start a thread on the mailing list.

Bugs and feature requests: braid project on lighthouse

Discussions and community support: braid-gem google group

Authors

  • Cristi Balan (evilchelu)
  • Norbert Crombach (norbert)

Contributors (alphabetically)

  • Alan Harper
  • Christoph Sturm
  • Dennis Muhlestein
  • Ferdinand Svehla
  • Michael Klishin
  • Roman Heinrich
  • Tyler Rick