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.
-
gub
:
This stores the Grand Unified Binary, our cross-platform building
tool.
For more info, see http://lilypond.org/gub. The git
location is:
http://github.com/janneke/gub
-
dev/XYZ
:
These branches are for individual developers. They store code
which is not yet stable enough to be added to the master
branch.
-
stable/XYZ
:
The branches are kept for archival reasons.
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