gawkworkflow: Starting A New Branch

 
 4.3 Starting A New Branch
 =========================
 
 Let's say you want to work on a new feature.  For example, you might
 decide to add Python syntax support.(1)  You should create a new branch
 on which to work.  First, switch back to 'master':
 
      $ make distclean
      $ git checkout master
 
    Now, create a new branch.  The easiest way to do that is with the
 '-b' option to 'git checkout':
 
      $ git checkout -b feature/python
      -| ...
 
    You now do massive amounts of work in order to add Python syntax
 support.  As you do each defined chunk of work, you update the
 'ChangeLog' file with your changes before "committing" them to the repo.
 
    Let's say you've added a new file 'python.c' and updated several
 others.  Use 'git status' to see what's changed:
 
      $ git status
      -| ...
 
    Before committing the current set of changes, you can use 'git diff'
 to view the changes.  You may also use 'git difftool'(2) to run an
 external 'diff' command, such as 'meld' on GNU/Linux:
 
      $ git diff                           Regular built-in tool
      $ git difftool --tool=meld           GUI diff tool
 
    When you're happy with the changes, use 'git add' to tell Git which
 of the changed and/or new files you wish to have ready to be committed:
 
      $ git add ...
 
    Use 'git status' to see that your changes are scheduled for
 committing:
 
      $ git status
      -|
 
    Now you can commit your changes to your branch:
 
      $ git commit
 
 Running 'git commit' causes Git to invoke an editor (typically from the
 '$EDITOR' environment variable) in which you can compose a commit
 message.  Please supply a short message summarizing the commit.  This
 message will be visible via 'git log'.
 
    ---------- Footnotes ----------
 
    (1) Just joking.  Please don't attempt this for real.
 
    (2) Don't run 'git difftool' in the background; it works
 interactively.