]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/contributor/source-code.itexi
Doc: CG, explain other git prompt variables
[lilypond.git] / Documentation / contributor / source-code.itexi
index 8e07f9fb06309632c717c11225006f8533c17077..620368280aa9bdb63e84be05462e0dda0032da18 100644 (file)
@@ -209,13 +209,25 @@ git config --global core.editor @var{nano}
 @end example
 
 Finally, and in some ways most importantly, let's make sure that
-we know what branch we're on.  If you're not using LilyDev, add
-this to your @file{~/.bashrc}:
+we can easily see the state of our working copy, without the need
+of typing @code{git status} repeatedly.  If you're not using
+LilyDev, add the following lines to your @file{~/.bashrc}:
 
 @verbatim
 export PS1="\u@\h \w\$(__git_ps1)$ "
+export GIT_PS1_SHOWDIRTYSTATE=true
+export GIT_PS1_SHOWUNTRACKEDFILES=true
+export GIT_PS1_SHOWUPSTREAM=auto
 @end verbatim
 
+The first line will show the branch we're on.  The other lines
+will use some symbols next to the branch name to indicate some
+kind of state. @qq{*} means that there are unstaged changes,
+@qq{+} indicates staged changes; if there are untracked files,
+a @qq{%} will appear.  Finally, we can also see if our HEAD is
+behind (@qq{<}) or ahead (@qq{>}) of its upstream, and if they
+have diverged (@qq{<>}) or they are synced (@qq{=}).
+
 You may need to install the additional @code{bash-completion}
 package, but it is definitely worth it.  After installation
 you must log out, and then log back in again to enable it.
@@ -464,7 +476,7 @@ prepare your upload:
 @example
 git fetch
 git rebase origin/staging dev/cg~0
-gitk HEAD 
+gitk HEAD
 @end example
 
 @warning{Do not skip the @command{gitk} step; a quick 5-second
@@ -1251,6 +1263,11 @@ Web: and Web-@var{**}:  Commits that affect the
 website should use @qq{Web:@tie{}} for English, and
 @qq{Web-@var{**}:@tie{}} for other languages.
 
+@item
+CSS: Commits that change CSS files should use @qq{Web:@tie{}CSS:@tie{}}
+or @qq{Doc:@tie{}CSS:@tie{}} depending on whether they affect the
+website or the documentation/manuals.
+
 @item
 Changes to a single file are often prefixed with the name of the file
 involved.