X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;ds=sidebyside;f=Documentation%2Fcontributor%2Fsource-code.itexi;h=f44dd31b3fd2534a0fe591ab10014e9184e51e93;hb=2d61e7ad1ea7797c180c0b6cba30df995aa9a1b2;hp=e0ce2c26bfafd1aad00c51991c628a7a87bc31a3;hpb=af60e9b57f205a3c2e044ac8db351b42ef3e26ad;p=lilypond.git diff --git a/Documentation/contributor/source-code.itexi b/Documentation/contributor/source-code.itexi index e0ce2c26bf..f44dd31b3f 100644 --- a/Documentation/contributor/source-code.itexi +++ b/Documentation/contributor/source-code.itexi @@ -93,7 +93,7 @@ files. @end enumerate @warning{Throughout the rest of this manual, most command-line -input should be entered from @file{~/lilypond-git/}. This is +input should be entered from @file{$LILYPOND_GIT}. This is referred to as the @emph{top source directory}.} Further instructions are in @ref{How to use lily-git}. @@ -160,7 +160,7 @@ The above command will put the it in @file{~/lilypond-git}, where @subsubheading Technical details -This creates (within the @file{~/lilypond-git/} directory) a +This creates (within the @file{$LILYPOND_GIT} directory) a subdirectory called @file{.git/}, which Git uses to keep track of changes to the repository, among other things. Normally you don't need to access it, but it's good to know it's there. @@ -171,7 +171,7 @@ need to access it, but it's good to know it's there. @warning{Throughout the rest of this manual, all command-line input should be entered from the top directory of the Git -repository being discussed (eg. @file{~/lilypond-git/}). This is +repository being discussed (eg. @file{$LILYPOND_GIT}). This is referred to as the @emph{top source directory}.} Before working with the copy of the main LilyPond repository, you @@ -549,28 +549,43 @@ environment variable to point to that repository. @end example To configure an environment variable in bash (the default for most -Linux distributions), +GNU/Linux distributions), @example export LILYPOND_WEB_MEDIA_GIT=$HOME/dir/of/lilypond-extra/ @end example +Be aware that @code{lilypond-extra} is the definitive source for some binary +files - in particular PDF versions of papers concerning LilyPond. To add +further PDFs of this sort, all that is necessary is to add the PDF to +@code{lilypond-extra} and then add a reference to it in the documentation. The +file will then be copied to the website when @code{make website} is run. + +However, pictures that are also used in the documentation build are mastered in +the main git repository. If any of these is changed, it should be updated in +git, and then the updates copied to @code{lilypond-extra}. + @node Grand Unified Builder (GUB) @unnumberedsubsubsec Grand Unified Builder (GUB) Another item of interest might be the Grand Unified Builder, our -cross-platform building tool. Since it is used by projects as +cross-platform building tool. Since it is used by other projects as well, it is not stored in our gub repository. For more info, see @uref{http://lilypond.org/gub}. -There are two locations for this repository, which will hopefully -be kept up-to-date with each other: +There are two locations for this repository: the version being used to +build lilypond, which is at @example -@uref{http://github.com/janneke/gub} @uref{http://github.com/gperciva/gub} @end example +and the original version by Jan Nieuwenhuizen, kept at + +@example +@uref{http://github.com/janneke/gub} +@end example + @node lilypad @unnumberedsubsubsec lilypad @@ -727,7 +742,7 @@ Already on 'master' @end example By now the source files should be accessible---you should be able -to edit any files in the @file{lilypond-git/} directory using a +to edit any files in the @file{$LILYPOND_GIT} directory using a text editor of your choice. But don't start just yet! Before editing any source files, learn how to keep your changes organized and prevent problems later---read @ref{Basic Git procedures}. @@ -1286,20 +1301,28 @@ use any email address for your google account when you sign up. @item Move into the top source directory and then configure @command{git -cl} with the following commands. If you do not understand any -question, just answer with a newline (CR). +cl} with the following commands: @example -cd $HOME/lilypond-git/ +cd $LILYPOND_GIT git cl config @end example +For the @qq{Rietveld server} question, the default value +(@qq{codereview.appspot.com}) should be accepted by +answering with a newline (CR). + The @qq{CC list} question should be answered with: @example lilypond-devel@@gnu.org @end example +The @qq{Tree status URL} value should be left blank. So should +the @qq{ViewVC URL} value, since it is used by @command{git cl +dcommit} which is only for repositories which use @command{git +svn} (LilyPond doesn't). + @end enumerate @subsubheading Uploading patch set @@ -2039,6 +2062,15 @@ patch has been lost. Note that you can check the commits on @code{origin/staging} by looking at the git web interface on savannah. +It may happen occasionally that the staging branch breaks automated +testing. In this case the automatic move of staging material to +master gets halted in order to avoid broken material entering master. +This is a safety net. Please do not try breaking out from it by +adding fixes on top of staging: in that case the whole sequence will +end up in master after all, defeating the purpose of the system. The +proper fix usually involves rewriting the staging branch and is best +left to core developers after discussion on the developer list. + @subsubheading If your work is in a patch file Assuming that your patch is in a file called