Project

General

Profile

iSALE and SVN

iSALE is distributed, updated and developed using SVN (Subversion ).

SVN for iSALE users

If you intend to use, rather than develop, iSALE there are only a couple of SVN commands that you need to know.

svn checkout (svn co)

SVN is used to checkout (download) the source code needed to install iSALE. For example, to checkout the main development branch of iSALE:

svn co svn://earth.naturkundemuseum-berlin.de/iSALE/trunk ./iSALE

svn update (svn up)

If the version of iSALE that you use is updated (e.g., a bug is fixed or a new feature is added), use svn update to update your copy of the repository. First, go to the root directory of your copy of the repository (the iSALE root directory), then type the command:

svn up

If you are at the latest version, you will just see a response: At revision X, where X is the latest revision number of iSALE. In this case, you did not need to update iSALE.

If your version needs updating, you will see a list of files appear. These are files that have been updated and are being transfered to your machine. Each new file will have a letter before it: U, A, D, G, or C. U means the file is an update. A means a new file has been added. D means an old file has been deleted. If you have not modified any files in your copy of the repository, no files should have the letters G or C in front of them. If they do, refer to the instructions for iSALE developers below.

Depending on the files that have been modified, you may need to repeat the following installation steps:

./configure --prefix=</path/to/install/directory>
make clean
make
make install

SVN for iSALE developers

Getting to know SVN

iSALE developers should become more familiar with SVN. Subversion documentation is available here http://svnbook.red-bean.com/. In particular, developers may find this guide to a common work cycle useful.

Updating iSALE

Periodically, developers of iSALE may inform you of updates to the version of iSALE you are using. If you are told to update iSALE, follow these instructions:

  1. Go to the iSALE root directory.
  2. Type: svn update
  3. If your version needs updating, you will see a list of files appear. These are files that have been updated and are being transfered to your machine. Each new file will have a letter before it: U, A, D, G, or C. U means the file is an update. A means a new file has been added. D means an old file has been deleted. G means that a new version of the file has been transferred and MERGED with the copy on your machine that you have modified. C means that the new version of the file is in conflict with the corresponding file on your machine because you have made modifications to it. If none of the updated files have a C infront of them, you have updated iSALE successfully and can continue to the next step. If you have any conflicting files, see the note below: you will need to resolve the conflict before proceeding.

Depending on the files that have been modified, you may need to repeat the following installation steps:

If there have been any changes to the configuration process, any structural changes to the repository, or any file has moved location: reconfigure, e.g.,

./configure --prefix=</path/to/install/directory>

Unless you know that only files with no dependencies have changed, you should run:

make clean

to ensure all libraries and programs are rebuilt.

Rebuild the reinstall all projects using:

make
make install

Resolving conflicts in svn

If after updating via svn any of your files conflict you will need to resolve these conflicts manually. To resolve conflicts in a file, open up the conflicting file in a text editor. Somewhere in the file, you will see something like this:

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Some lines of code from the file on your machine
================================================
Some lines of code from the new updated file
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

For each instance in the file that you see this, you need to decide whether to keep the lines of code from your modified version of the file or the lines of code from the new updated file from the repository. You must also delete all the <<<<, ==== and >>>>> symbols. For more information about resolving conflicts, please see the svn manual.

After you have finished resolving the conflicts, type the following in the directory containing the file you have corrected:

svn resolved <filename_of_resolved_file>

You must do this for each file in conflict.