Accessing the source code and getting started

/wiki/spaces/SC/pages/51643422

This page will show you how to get set up with eWater Source's code. We use git for version control of source code and project files. It is hosted by BitBucket for Source members to share plugins, source project files, and get access to the source code.

If you would like access to the source code, please complete the following steps if you have not already done so:

  1. Create a BitBucket account (https://bitbucket.org/)
  2. See: Sg (Source Get)
  3. Install Visual Studio 2022
  4. .net framework 4.8 SDK https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48
  5. .net 5.0.401 sdk https://dotnet.microsoft.com/en-us/download/dotnet/5.0
  6. Main Solution file to be opened with Visual Studio is RiverSystem\Solutions\Source.sln


Note: Please don’t include special characters into your username or password (particularly ‘:’, ‘/’, ‘\’, ‘.’ or ‘@’).

git home page: https://git-scm.com/

quick start videos available: https://git-scm.com/videos

visual cheatsheet available: https://ndpsoftware.com/git-cheatsheet.html

The main change from Subversion is that everyone has the entire repository on their machine.  This means an Update in subversion becomes a two-step process:

  1. Fetch changes from the central repository to your local repository
  2. Pull your local code to the latest version on your local repository



You can Fetch then Checkout all of the repositories using sg.exe:

Using Powershell or Command Prompt: you will need to include a .\ infront of sg.exe


Using Git Bash: you will need a ./ infront of sg.exe


Note: if you add sg.exe to your path - you can call sg without a ./ or .\ infront. But this will require administrator privileges to do so.

This also means the process for making changes requires a two-step process to make changes to the central repository.  The general process will be:

  1. Commit changes into your local repository
  2. Pull / Rebase changes from the server
  3. Merge the changes into your repository
  4. Push the changes back to the server.

Rather than having one large repository we have a few smaller repositories that can be seen on BitBucket:
https://bitbucket.org/ewater

You will / have all been given access to a number of Source plugin repositories as well as the repositories needed for Source.

Changes for the core repositories are made by doing a Pull Request.  Details of how to do a Pull Request can be found here: Fork a Repo, Compare Code and Create a Pull Request