= New Developers = Welcome, new developer! This page will help you get started using this site to help us develop the Rappture toolkit. Start by downloading the code. Make some changes, check it in. Voila! You're a Rappture developer! == Getting the Code == First step is to download the Rappture development code. To do this, you'll need [http://subversion.tigris.org/ Subversion], an open source version control system. You can [http://subversion.tigris.org/project_packages.html download Subversion] for all major platforms, including Linux, Windows, and MacOSX. Subversion is similar to [https://www.cvshome.org/ CVS], so if you've used that before, you'll feel right at home. Once Subversion is installed, you download the Rappture code as follows: {{{ % svn checkout https://faou.itap.purdue.edu/svn/rappture/trunk rappture }}} The {{{checkout}}} command makes a local copy of the entire Rappture source tree into your current working directory as a subdirectory called {{{rappture}}}. By requesting {{{.../rappture/trunk}}}, you get the main development trunk, which should have the latest stable code. == Making Changes == Once you've downloaded the code, you can make whatever changes you like. For example, you might edit a file to fix a bug or add some code. To make your changes permanent, you must {{{commit}} them to the repository as follows: {{{ % cd rappture % svn commit --message "fixed my first bug!" }}} You don't have to include the optional {{{--message}}} argument. If you just say {{{svn commit}}}, Subversion will prompt you for comments in your favorite editor, and you can type much more. It's best to commit at the top of the source tree--that's why we said "{{{cd rappture}}}" in the example above. When you commit at the top of the tree, Subversion will search everything below, find all files that have changed, and commit them all at once. Committing a change makes it permanent. Once committed, other developers will see the change. If for some reason, you want to throw away your changes and start fresh, you can simply remove your source tree and check it out all over again. Or, you may want to remove just a few files that you've modified, and then {{{update}}} (as we'll see below) to replace the missing files with their previous version. From time to time, you and another developer will modify the same file at the same time. Suppose the other developer checks in his changes first. When you try to commit, you'll get an error saying that your file is out-of-date. In that case, you need to {{{update}}} before committing. You can do that as follows: {{{ % cd rappture % svn update }}} It's best to update at the top of the source tree--just like commit. That's why we said "{{{cd rappture}}}" in the example above. When you update at the top of the tree, Subversion will search everything below, adding any new files, replacing any missing files, and integrating changes made by other developers. Once all files are properly updated, you can commit your changes again, and this time, it will work.