The ALFA development environment

Under construction: The article and the dev environment aren't complete. 

The ALFA development environment

We're working on a development environment for ALFA that will make it easy us to all contribute towards the ACR and haks. We do this by using a Git repository located on Github.com.

This environment lets you download the latest haks, build them into a test mod, and commit your changes to ALFA with a few simple commands. Of course the environment is not required (you can still email stuff to the tech staff), but when used properly it makes everyone's life a lot easier.

This guide will help you get started, depending on your level of experience.

Everyone needs to sign up for a Github.com account, and to let the tech team know what your username is so they can add you to the project (without that you won't have the permissions to make any changes).

Git for experienced developers:

The repo is here: https://github.com/ALandFarAway/ALFA-Base-Resources/

Get Git for Windows here: http://code.google.com/p/msysgit

If you don't want to mess with ssh keys and auth, you can use https by typing the following and entering your Github password when prompted:

git clone https://YourGithubUsername@github.com/ALandFarAway/ALFA-Base-Resources.git

If you do what to mess with ssh keys and auth, read here for how to set them up: http://help.github.com/win-set-up-git/

If you're familiar with SVN but not Git, try this: http://git.or.cz/course/svn.html

SVN doesn't seem to work well with large commits/updates (our haks are just under 2gb), while Git seems to work flawlessly and has better compression for large pulls/pushes.

Git for non-developers:

Firstly, read this tutorial. It assumes no knowledge of version control systems: http://blogs.sitepoint.com/version-control-git/

Get the latest version of Git for Windows here: http://code.google.com/p/msysgit

You have the option of installing Git with its own bash command prompt, or integrating into the windows command prompt. If you're familiar with bash commands the former is probably the better option. If you don't know what the hell that is, go with the later.

To clone our repository, go to a directory where you want to put it, and type:

git clone https://YourGithubUsername@github.com/ALandFarAway/ALFA-Base-Resources.git

Anyone wanting a GUI:

I suggest using SmartGit:

  • Download and install Git for Windows: http://code.google.com/p/msysgit/
  • Download SmartGit: http://www.syntevo.com/smartgit/index.html
  • Run the installer.
  • On the second step, select "Non-commercial use only".
  • In the third step, point SmartGit to your git executable. It generally finds it automatically.
  • In the fourth step, select "Use SmartGit as SSH client".
  • In the fifth step, enter whatever name and email you want associated with your commits.
  • Next, enter the name you used at github (NOT your email address) and password.
  • When SmartGit launches, select "Clone existing repository", and paste the following: git@github.com:ALandFarAway/ALFA-Base-Resources.git
  • You'll need to enter your github password again (click the checkbox to make SmartGit remember it).
  • Then select the directoy where you want the repo. I'd recommend putting it off My Documents\Neverwinter Nights 2.

Using the environment

Fix me.

Don't know what any of this means?

You can always email any submissions to someone who does. It does make our lives a lot easier if you use Git, however.