|
Interactive Media & Game Development Worcester Polytechnic Institute |
IMGD |
IMGD 4000: Technical Game Development II
SVN SVN Source Control Setup for Term Project
Please carefully follow the instructions below to do the
initial setup of your Unity project with SVN source control. These instructions
assume that you are using Unity Pro on PC and TortoiseSVN has been installed, which
is the case for the machines in the IMGD lab. They also assume you are familiar with
SVN and TortoiseSVN. (If you prefer to use the SVN command line client,
see these instructions.)
If you are not familiar with SVN and/or you need to install it on your personal computer,
please visit http://tortoisesvn.net. Documentation on
using TortoiseSVN can be downloaded at Support/Docs tab or by typing F1 while running any
TortoiseSVN dialog (Chapter 2 covers basic SVN concepts.) It is most convenient to do
simple commit and update operations from inside MonoDevelop (see below), but TortoiseSVN
is useful for tracking and comparing versions and other advanced operations.
Make sure that the IMGD 4500 students on your team have FusionForge
accounts and show them how to check out your project and commit their assets.
This setup process is a bit touchy, but once you are set up, updates and commits
are very straightforward using TortoiseSVN. Note that you will also conveniently be
able to perform SVN operations directly in the MonoDevelop Solution window.
(MonoDevelop automatically detects the presence of SVN files).
Once you you done this setup, never move, rename, add or delete
Unity files directly in the File Explorer! Doing so can easily break the
integrity of your project. All file changes can conveniently be done in the
Unity Editor's project window.
- Confirm your group folder name by logging into the
WPI FusionForge server in your browser and going
to the d14 folder in the source repository for project titled "IMGD 4000 (D 2014): Project
Repository". In the following instructions replace our_folder
by your group folder name.
- In the Unity Editor, select File > New Project to create a new project with your
group folder name (see 1) in some convenient location. Do not check any of
the packages to import (you can import the ones you actually use later in the editor
using Assets > Import Package).
- In the Unity Editor, select Edit > Project Settings > Editor and verify either the
"hidden meta file" or "visible meta file" option is selected.
- Add a dummy asset to your new project (you can delete it later), e.g., in the Project
window, select Create > Prefab.
- Quit the Unity Editor to ensure all files get saved and any temporary data goes away.
- Navigate in the File Explorer to the new project folder you just created. Delete
the Library subfolder and also the temp subfolder if it is there.
- Right click on the project root folder and select Import from the TortoiseSVN menu.
In the URL field type in:
https://fusion.wpi.edu/svn/imgd4000-2014d/trunk/d14/out_folder
where our_folder is your group folder name, and then click OK to upload
your files to the repository.
- Delete the root project folder you just created in your local file system.
- Use the TortoiseSVN Checkout command to check out a fresh copy of your project from
the repository (in same location) using the url given in step 7 above.
- The remaining steps are optional but highly recommended. What they do is
guarantee that you will not be bothered in SVN about changes in various Library files
that are not supposed to be committed to the repository.
- Open the Unity Editor again, Select File > Open Project, navigate to the project
folder you just checked out and wait while it rebuilds its Library files. Then quit
Unity again.
- In the File Explorer, right click on the root folder of the project and select
Commit from the TortoiseSVN menu.
- Under the "Changes made" section that pops up, you'll see many non-versioned
files in the Library subfolder. Select the Library folder. Right
click on it and select Add to Ignore List > Ignore by Name.
- Now commit all the files in the project. The only thing that should happen is
updating of the ignore properties---no files should actually be uploaded.
Back to course page.