On Aug 4, 2007, at 12:00 AM, Allan Odgaard wrote stuff about things.
Obviously the ideal plan would be to have transparent git commits and merges and updates all happening seemlessly in the background any time you interact with bundles. The auto-update system would have to let you automatically update your bundles somehow too.
The trick is how we get from where we currently are to where we need to be. I think we can make baby steps in the meantime to ease our way into the ideal.
Just think about the ways people currently deal with bundles:
1. Use only the bundles you get from inside TextMap.app when you download the latest version. 2. Download bundles in zip files, double-click to install. All local changes go into tmdeltas. 3. Manually checkout all or individual bundles and the support folders. All local changes either go into deltas or the bundles themselves. 4. Use GetBundles to do #3 for you.
Switching to git won't really change much of anything in the short term. And you should be able to ramp up and make it completely first class integrated for TM2.
Switching from Subversion to git:
1. No change 2. No change 3. Manually checkout with git instead. Nerds will figure it out. 4. Update GetBundles to use git instead.
Until TM2 comes out, you should keep the subversion repo up and running. Just gradually convert each tmbundle into a git checkout/repo (.git folder in the root of the project?) and commit that to the subversion repo. Then as people keep updating their bundles, their bundles get upgraded in the background without them ever knowing about it. Eventually we remove all the .svn folders and turn off the server. Once that happens you should have something in TM2 to handle the updates from that point on. You'll also have to think of something to do about the tmdeltas once that happens. Have fun with that.
Obviously, for anything that gets included with the TextMate app itself, there is going to have to be a single source that you pull from. Either your own git branch merged from other peoples or just pulling from them directly with no merging.
Until TM2 comes out, all us nerds should be happy updating and committing our bundles to a central subversion repo or upgrading them to git and pulling from a central source. But once TM2 comes out, it should integrate all that stuff right into the app itself.
I can hardly wait to upgrade all my bundles to git.
thomas Aylott — subtleGradient — CrazyEgg — sixteenColors