David, Thanks for looking into this. Someone (I'm so bad, I can't even remember who it was, sorry!) recently posted another solution involving "git archive", which sounded like safe and efficient option for supporting this. Perhaps you could work your app_root option into the changes they proposed? They posted the patch to Capistrano's lighthouse:
http://capistrano.lighthouseapp.com/projects/8716-capistrano/tickets - Jamis On 1/19/09 10:58 AM, David W. Body wrote: > Jamis and everyone, > > Like several other Capistrano users, I've had a need to deploy > applications located in subdirectories of git repositories. I've > tried several approaches, and none have been completely satisfactory. > > The best solution I've come up with so far is to add an :app_root > variable to my recipe and set it to the subdirectory in my git > repository that I want to actually deploy. I set :app_root like this > > set :app_root, "my_app" > > To make this work, I also modified Capistrano's git module so that it > executes the following command after cloning the repository: > > git filter-branch --subdirectory-filter my_app > > I'm pretty new to git, so I don't know if this is the best solution. > I think running git filter-branch on a large repository is probably a > pretty expensive operation, but this approach seems to work OK for > smaller repositories. > > [Note to other git newbies: If you want to try this command, only run > it on a clone of your repository. You'll be very unhappy with me (and > yourself) if you run it on your actual working repository.] > > I just pushed these changes to a fork of Capistrano on github: > > http://github.com/davidbody/capistrano/tree/master > > I'd appreciate feedback from anyone, especially from git experts. > > --David W. Body / Big Creek Software, LLC > > > --~--~---------~--~----~------------~-------~--~----~ To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/capistrano -~----------~----~----~----~------~----~------~--~---
