Since we are keeping this in a Git repository, you need to have EGit installed in your Eclipse
# Setting up the repository
1. Open the Git Repository perspective
1. Choose the icon for "clone a Git repository and add the clone to this view"
2.1. Use the URL for this repository and your github credentials
2.2. Choose "master" for the branch
2.3. For the directory, pick your Eclipse workspace
2.4. Let it add projects to your workspace. It should create five projects for the five parts of the system.
# Making a branch
No one should make changes directly to the Master branch of the repository. That is kept pristine except for new releases (think of it as a release stream). When we start new development on something, we will agree on a branching structure.
When you want to create a branch, go to the Git Repositories perspective, right click on the repository and select "Switch to -> Create Branch." Give the branch a name and you are ready to go. You can use that "Switch to" to see the current version of any branch. If we want a branch to pick up the changes in the Master branch, we can "rebase" it.
When something is ready to be released, the project manager (Merlin!) will merge the branch back into the Master.
Program Arguments: --port=1878 --map=theGreen.tmx --localhost
Working Directory: FreshmanRPG/GameServer
Name: GameClient-desktop
Project: DesktopClient
Arguments: --localhost
Main Class: DesktopClient
Program Arguments: --localhost
Working Directory: FreshmanRPG/GameClient-desktop
Name: GameManager
Project: GameManager
Main Class: manager.GameManager
Arguments: --localhost --db=x (where x is your database identifier)
Program Arguments: --localhost --db=x (where x is your database identifier)
Working Directory: FreshmanRPG/GameManager
## Running in production for testing
To test using the production database, change the --localhost arguments for all run configurations to --production **except** GameClient-desktop, which should still use the --localhost argument. Since you are running the servers on your local machine, the client needs to know that they are being run locally.