1.1 Getting the source code


1.1.1 Git introduction

The source code is kept in a Git respository. This allows us to track changes to files, and for multiple people to work on the same set of files efficiently.

Note: These instructions assume that you are using the command-line version of Git 1.5 or higher. Windows users should skip to Git on Windows.


1.1.2 Main source code

To get the main source code and documentation,

 
mkdir lilypond; cd lilypond
git init-db
git remote add -f -t master -m master origin git://git.sv.gnu.org/lilypond.git/
git checkout -b master origin/master

1.1.3 Website source code

To get the website (including translations),

 
mkdir lilypond-web ; cd lilypond-web
git init-db
git remote add -f -t web -m web origin git://git.sv.gnu.org/lilypond.git/
git checkout -b web origin/web

1.1.4 Documentation translations source code

To translate the documentation (not the website),

 
mkdir lilypond-translation; cd lilypond-translation
git init-db
git remote add -f -t lilypond/translation -m lilypond/translation origin git://git.sv.gnu.org/lilypond.git/
git checkout -b lilypond/translation origin/lilypond/translation

1.1.5 Other branches

Most contributors will never need to touch the other branches. If you wish to do so, you will need more familiarity with git.


1.1.6 Other locations for git

If you have difficulty connecting to most of the repositories listed in earlier sections, try:

http://git.sv.gnu.org/r/lilypond.git
git://git.sv.gnu.org/lilypond.git
ssh://git.sv.gnu.org/srv/git/lilypond.git

Using HTTP protocol is slowest, so it is not recommended unless both SSH and Git protocols fail, which happens e.g. if you connect to internet through a router that filters out Git and/or SSH connections.


1.1.7 Git user configuration

To configure git to automatically use your name and email address for commits and patches,

git config --global user.name "MYNAME"
git config --global user.email MYEMAIL@EXAMPLE.NET

Contributor’s Guide