MG/Getting The Code

From MegaGlest
Revision as of 08:08, 25 January 2012 by 209.52.70.192 (talk)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

*NOTE: Due to problems converting to GIT we are STILL using svn, so skip down to the section titled SVN below until further notice!


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.6.0.2 are in a different SVN repository, however), and requires a Git client to download. Clients exist for all major operating systems.

Linux

This section is currently outdated. You can edit this page to improve that.

Most users will want to use the Apache Software Foundation (ASF) subversion command line interface (CLI), as provided, on most distributions, by the 'subversion' package. Many distributions also provide graphical interfaces which are either frontends to the ASF subversion CLI or are standalone.

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, TurtoiseGit exists for that, though you will still need to install Git as well as MysisGit.

Check out the source code

Making the directory

Prior to running this command, you should navigate to the folder you wish to place the MegaGlest source.
mkdir megaglest-git
cd megaglest-git

Cloning the sources

Read only

git clone git://megaglest.git.sourceforge.net/gitroot/megaglest/megaglest-source
git clone git://megaglest.git.sourceforge.net/gitroot/megaglest/megaglest-data
git clone git://megaglest.git.sourceforge.net/gitroot/megaglest/megaglest-data-source

Read and write

git clone ssh://<sourceforge-username>@megaglest.git.sourceforge.net/gitroot/megaglest/megaglest-source
git clone ssh://<sourceforge-username>@megaglest.git.sourceforge.net/gitroot/megaglest/megaglest-data
git clone ssh://<sourceforge-username>@megaglest.git.sourceforge.net/gitroot/megaglest/megaglest-data-source

Create the link

cd megaglest-source
ln -s -T ../megaglest-data data

With TortoiseGit

This section only applies to those using TortoiseGit instead of the command line.

Once TortoiseGit and its prerequisites of Git and MysisGit are installed, right click in the folder you wish to place the sources and choose "Git Clone" from the context menu. Enter the following links in one at a time, waiting for TortoiseGit to finish downloading each one.

git://megaglest.git.sourceforge.net/gitroot/megaglest/megaglest /megaglest-source
git://megaglest.git.sourceforge.net/gitroot/megaglest/megaglest /megaglest-data
git://megaglest.git.sourceforge.net/gitroot/megaglest/megaglest /megaglest-data-source

SVN

The SVN section is now deprecated, but will work for version 3.6.0.2 and earlier.

If you chose a subversion CLI then run the following command to retrieve the latest source code:

svn co https://megaglest.svn.sourceforge.net/svnroot/megaglest/trunk megaglest

Project folder layout

Folder structure.png

Tags and branches

This will check out the trunk directory, which is where active development takes place in. Each release is 'tagged' and a copy resides in the tags directory, 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