![]() I check out the plugins into my vendor/plugins directory.There are two SVN clients under Ubuntu: 1.SVN. There is a tool called piston that aims to clear that up, though I don't use it. Hate to say it, but none of the linux svn GUI tools that I have seen are as good as tortoisesvn. Next, if rapidsvn is not working out for you, try svn-workbench. Most problems come if you use OS functions to delete or rename files. It's not too hard to do svn status or svn commit -m "blah". If all your gems are pure-ruby ones, then this is not a problem, but it's just something to be aware of.įirst, figure out svn from the command line. If you installed a native C extension on ubuntu, then put it in the vendor folder, and later on tried to run that on OS X (or even possibly a different version of ubuntu) it would most likely crash your ruby process and bring your app down. c source code is downloaded, and gcc gets run to compile it specifically for your system. What this means is that when you install them, the. ![]() Some gems (such as mongrel or hpricot) have native extensions written in C. This may not be an issue for you, or may be worth putting up with, it's just a personal preference. If you have 10 apps and they each vendor their gems, you end up keeping 10 copies of common gems in subversion, which makes updating all your sites a whole lot slower. There are 2 problems with this approach however, so I prefer not to use it myself. This is commonly known as "vendor everything." The easiest way to do this is to list all the gems you use in environment.rb as above, and then run rake gems:unpack. You can take this one step further, and put your gems in the vendor directory. He can then install them in one step using sudo rake gems:install What this means is that if you add a new gem, the next time your co-worker updates, his rails app won't boot until he's got the neccessary gems. Here's a bunch of information about that feature You should be listing the gems you require in your config/environment.rb using config.gem. Piston was also a great solution, but switched away from it when all the common plugins started moving to github (piston has been unreliable since then)įor gems, hopefully you're using rails 2 or higher. I looked at RubyMine, and would love to use it, but it appears to be too unstable right now.įor plugins, I'd personally recommend just sticking them in the vendor folder and add them to SVN as if you'd written the code yourself. I forgot to mention, I use NetBeans for my IDE, although i have not looked to see what kind of SVN support it has, if any. I'm literally looking for a step by step process on this one. What are some best practices for using SVN on a RoR project on Ubuntu? I'm not sure why, but ok, that's what the manual says. I actually RTFM a bit last night and found that I'm supposed to create a bookmark for my repos, then do a "checkout working copy" from that bookmark. I ended up making a backup of my code, pulling down a new working copy, then manually moving over changes and being a bit smarter when committing them to the project. But in both scenarios, i couldn't fix it. A couple times I realized my mistake, others, I had no clue why. I have installed RapidSVN, but very frequently run into issues with folders getting locked. I just don't know how to do this correctly. Diskspace and network bandwidth are cheap. What is the best practice for managing gems and plug-ins in a RoR application? I don't care if a zillion files get added to SVN. The problem is though, that after I commit my code, and the other guy gets latest, he has to go through the whole process of installing gems. I ended up blowing away Ruby completely and starting fresh. Being new to *nix, I didn't use sudo when installing them and ran into all sorts of issues. ![]() Either way, I had a bunch of gems to install for the plugin I'm using (Community Engine). I also seem to be struggling with using SVN on Ubuntu. I seem to be struggling with how to manage the various versions of ruby, rails and all of the plugin's I'm working with. He happens to be using a Mac for his development machine. I have a SVN server up and running and am working with another person on this project. In an effort to learn new things, I've decided to build a Ruby on Rails application and have created a Ubuntu based development machine. All dependencies are stored in a lib folder, source code is in a src folder, etc. My projects are also self contained, meaning I can go to a fresh dev box, pull down a single repository, open VS, press F5 and it will run (most of the time). With SVN I use TortiseSVN and use the standard branch/tag/trunk setup. I started using VSS long long ago, and made the change to SVN about 2 years ago. Up until 2 weeks ago, I had never booted any other OS than 98/XP/Vista. I have been working on the MS platform for my entire development career.
0 Comments
Leave a Reply. |