Template:Obtaining The Source Code: Difference between revisions

From Spring
Jump to navigationJump to search
Jk (talk | contribs)
Jk (talk | contribs)
mNo edit summary
Line 1: Line 1:
=== Current ===
=== Tarballs ===
'''(For playing online)'''
'''(For playing online)'''


{{Tarballs}}
{{Tarballs}}


=== Development Sources from Git ===
=== Receive sources via Git ===
'''[http://github.com/spring/spring <span style="color:#bbf;">Spring project page at github</span>]'''
'''[http://github.com/spring/spring <span style="color:#bbf;">Spring project page at github</span>]'''
<small>[http://status.github.com (status page)]</small>
<small>[http://status.github.com (status page)]</small>

Revision as of 18:43, 12 May 2012

Tarballs

(For playing online)

Using Git is the recommended way to get the sources of the engine. In spite of, you can use the official tarballs to compile Spring without git.

Note: Do NOT use the zip-files from github, they are missing important data to compile Spring.

See Building spring for build instructions.

Receive sources via Git

Spring project page at github (status page)

Master repo URI: git://github.com/spring/spring.git

Latest Stable (master branch)

Assuming the GIT command line client is installed, you can clone the repository with

git clone git://github.com/spring/spring.git -b master

and update it with:

git pull --rebase

If github is unavailable or slow, there is a mirror:

git://springrts.git.sourceforge.net/gitroot/springrts/springrts


Bleeding-edge (develop branch)

This will also allow you to make a patch out of the changes you make to the code, and send it to one of the developers with repository access. If you are new to git and github, you may want to have a look at this guide to get you started.


Just as above with a minimal change:

git clone git://github.com/spring/spring.git -b develop

and update with:

git pull --rebase


Note: you can switch branches this way:

# backup your current changes
git stash

# switch branch
git checkout $MY_OTHER_BRANCH

# sometimes needed
# note, it deletes all your unstashed changes and all non-pushed commits on the new branch,
# but it doesn't delete untracked files.
#git reset --hard 

# update/sync with remote repo
git pull --rebase

#optional
#git stash pop # reapplies your changes and DELETES the backup
#or
#git stash apply --index 0  # reapplies your changes and keep the backup (see `git stash list`)

Optional AI's

If you want to also compile the AI's, you have to type

git submodule sync
git submodule update --init

to update the submodules, you have to execute the same commands again.