Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
How to get RHESSys
The source code for RHESSys and information on how to download the various tools for use with RHESSys are hosted on GitHub.
Download the code:
- Zip file via webpage
- Clone via the GitHub client (recommended for code developers and regular updates)
(does not require installation of the Git client)
For users that simply want to download the most recent version of the code for use - and are not interested in code development or regular code updates, you can download a zip file of the latest version of the code here: https://github.com/RHESSys/RHESSys
(Note: downloading the code via a zip file will not allow you to download updates made to parts of the code - without downloading the entire code again)
- the above link will take you to the most recently released versions
- make sure the branch is on MASTER
- in the right hand column, click Download ZIP
- move the file to the directory where you want to keep the RHESSys files , i.e. create a RHESSys directory on your hard drive
- untar/unzip the master.zip file
1. cf (create flowpaths)
2. g2w (grass to world)
3. rhessys (rhessys code file)
4. utils (contains additional special programs and helpful utilities)
5. *makefile (To be used for global installation - you must be signed in as root to use this makefile, not the recommended method. This 'global' makefile is not regularly updated.
RECOMMENDED: Local installation - each program subdirectory contains an independent makefile to compile each program individually).
- See the Installing RHESSys and associated programs page for instructions on how to compile the binaries in order to run RHESSys
Clone via GitHub client
(requires installation of the Git client)
RHESSys now uses Git for version control. These instructions assume that you have installed Git. If Git is not installed on your computer, we recommend you use your operating system's package manager (For OS X you can use either Homebrew or MacPorts). You can also download Git binaries from http://git-scm.com/downloads and install.
Git is a distributed version control system. For users familiar with centralized version control systems such as Subversion, there are many guides to help you learn Git (e.g. http://git.or.cz/course/svn.html).
This will allow you to easily retrieve updates to parts of the code, contribute changes to the main code, develop your own branches, merge back in sync with other developers, maintain your own source code that you can easily keep up to date without downloading the whole thing each time and writing over your own changes, etc.
A ZIP file won't let you do that.
Once Git is installed on your system:
Downloading RHESSys code using Git by Cloning the repository
Before you can start developing RHESSys, you must clone the RHESSys source code from the Git repository hosted on GitHub.
To clone the code to a directory that will be named rhessys_git on your local computer, type the following:
U> git clone https://github.com/RHESSys/RHESSys.git rhessys_git
This will clone the repository to your local computer, and will configure the GitHub RHESSys repository as a remote repository named "origin". By convention, the RHESSys repository located on GitHub is the authoritative source of the RHESSys sourcecode.
RHESSys code is organized in two main branches within the Git repository. Day-to-day development takes place in the "develop" branch. RHESSys releases are periodically made by merging the develop branch with the "master" branch; each release is signified by a tag number. Both the develop and master branches exist on each developer's local repository as well on the GitHub repository. Developers may wish to create "feature" branches on their local repositories to help better organize the work they are doing.
This branching model--master, develop, and feature branches--is a simplified version of that described in "A successful Git branching model" (http://nvie.com/posts/a-successful-git-branching-model/). This short document also explains how Git works; it is highly recommended that RHESSys developers read this document. The following instructions draw heavily on the above branching model.
See the Installing RHESSys and associated programs page for instructions on how to compile the binaries in order to run RHESSys
For information on using Git to manage RHESSys source code:
For instructions on working with the rhessys/git repository on your computer: https://github.com/RHESSys/RHESSys/wiki/RHESSys-Git-Repository#working-with-the-rhessys-git-repository-and-github