MG/Getting The Code

From MegaGlest
Revision as of 03:01, 5 February 2014 by 87.149.68.92 (talk) (simplified clone)
Jump to navigation Jump to search

MegaGlest has now switched to git for managing the game's source code and data (the svn repo is no longer active). Using the command line you would get the code in one of two ways. Either read-only if you will not contribute changes or read and write if you plan to help contribute to the project as well.

Choose a git client

The MegaGlest source is stored in a Git repository (versions prior to 3.9.0 are in a different SVN repository, however), and requires a Git client to download. Clients exist for all major operating systems.

Linux

Install the git tools. On Debian GNU/Linux based distributions this is as easy as

sudo apt-get update && sudo apt-get install git

On other distributions, the process will be quite similar but you will need to use the package management tools available there.

Windows

Download Git and install it, then run git-bash.bat in the installation folder to start the Git command line. For those with a preference for a client with a graphical interface, TortoiseGit exists for that, though you will still need to install Git as well as MysisGit.

Check out the source code

Cloning the sources

Prior to running these commands, you need to navigate to the directory (folder) you wish to place the MegaGlest source in.

Read only

git clone --recursive https://github.com/MegaGlest/megaglest-source.git
cd megaglest-source
git submodule update --init --recursive

Read and write

# This will ask for your standard GitHub username and password
git clone https://github.com/MegaGlest/megaglest-source.git
cd megaglest-source
# This may ask for your standard GitHub username and password again
git submodule update --init --recursive
cd data/glest_game
git checkout master
cd ../..

Tags and branches

This will check out the master source code and data directories, which is where active development takes place in. Each release is 'tagged' and resides as tags, so if you wanted an older release you would check out something below instead. Check here to see which ones are available.

Branches are created in the branches subdirectory when required to seperate larger changes from active / stable development, so replace 'trunk' by 'branches' and check with your web brower which ones are available if this is your intention.

See also