Source Code Control

Overview

Source code control systems (also known as revision control systems) are tools that can help in game development, especially when done in teams. Such systems provide a way to manage and organize files, keeping track of versions and change information as the development progresses. They also provide a means for safely sharing files among a team of developers, helping prevent editing conflicts.

Note: Requesting space under WPI's FusionForge can take up to 72 hours due to the fact that the administrators need to approve space for your project. Therefore, set it up sooner rather than later!

Setting up a FusionForge Project

Go to http://fusion.wpi.edu and log in to your WPI account.

Click on "My Page" and then click on "Register Project".

Fill out the form accordingly. The project title should be a unique name to your group. Be sure to choose either "Subversion" or "Git" under step "5. Source Code" and the respective template under "6. Project template".

Click the "Submit" button. Approval does not usually take long but as stated above, it can take up to 72 hours. Once approved, you will receive email confirmation.

Once your team is chosen, you can add a team member by going to "My Page" > "[Project name]" > "Admin" (a tab on the second bar along the top) > "Users and Permissions". Type in the team member's WPI username and click "Add Member".

You can view all of the source files and other statistics from the "SCM" tab in your project page.

SVN Instructions

Apache Subversion (often abreviated SVN) is a freely available, commonly used centralized source code control system.

Installing TortoiseSVN

The IMGD and Zoo lab computers already have TortoiseSVN installed on them. If you would like to install it on your own computers, you can follow these instructions.

Go to http://tortoisesvn.net/downloads.html and download the correct installer for your 32-bit or 64-bit operating system.

Run the downloaded installer file and follow the instructions to install.

Checking out your repository

Navigate to the folder on your computer where you would like your project to be located.

Right click and select "SVN Checkout".

For the URL of your repository, type "https://fusion.wpi.edu/svn/[YourProjectName]". Make sure the "Checkout Depth" is set to "Fully recursive" and under "Revision" have "HEAD revision" selected. Click "OK" and your project should begin pulling from FusionForge.

Git Instruction

Note: If you have not used Git before, SVN is considered more user-friendly, especially for artists. Depending on your team's familiarity with Git, you might want to use TortoiseSVN using the instructions above instead.

Git is a freely available, commonly used distributed source code control system.

Installing Git

The IMGD and Zoo lab computers already have Git Bash and Git GUI installed on them. If you would like to install it on your own computers, you can download Git here: http://git-scm.com/downloads. If you would like to use a more sophisticated GUI, you may choose to try Git Extensions here: https://code.google.com/p/gitextensions/.

Cloning your repository

Open Git Extensions and click "Clone Repository" on the left side. The URL you are going to clone will be "https://fusion.wpi.edu/git/[YourProjectName]". Paste that in the "Repository to Clone" box and choose the destination on your hard drive where the code will be cloned. Click "Clone" and log in with your WPI username and password. For more detailed instructions or tutorials on how to commit your code, check here: https://git-extensions-documentation.readthedocs.org/en/latest/

Using Git Bash

In Git Bash, navigate to the directory on your hard drive where you want the code to be placed using the "cd" command. Type: "git clone https://fusion.wpi.edu/git/[YourProjectName]/[YourProjectName].git". If you are new to Git, it is recommended that you use SVN with Git Extensions or at the Git GUI (from Git Bash, type "git gui" to launch it).