Add pre-receive hook for blocking pushes with large files
Adding copy of new pre-receive hooks to copy script
Merge branch 'master' of casl-dev:TriBITS
Merge remote branch 'github/master'
Add .gitdist.default file and unit testing of .gitdist[.default] reading

The idea is that the file .gitdist.default can commited to the base git repo
but the developer can override it by creating their own .gitdist file (like
they can now).
Add option --dist-mod-only (not tested yet)

The new option --dist-mod-only has only been manually tested but all existing
tests pass so it seems approiate to commit this state.  Now I need to figure
out how to unit this test without running actual git commands on real git
repos :-(

Build/Test Cases Summary
Enabled Packages: TriBITS
Enabled all Forward Packages
0) MPI_DEBUG => passed: passed=176,notpassed=0 (0.88 min)
1) SERIAL_RELEASE => passed: passed=176,notpassed=0 (0.71 min)
Other local commits for this build/test group: 282587e
Fixing return code for runSysCmndInterface()

This was using subprocess.Popen() incorrectly.  I found this out while trying
to code some other test code up.  After reading the documentation for
subprocess.Popen, I figured out how to get the return code correctly.

The reason that I never saw this problem before was that
runSysCmndInterface(..., rtnOputout=True, ...) was really only used in
CheckinTest_UnitTests.py where all of the commands where mock commands, not
real commands.  For that case it worked fine.

I had to fix a few of the tests for this change.  I can't understand why I did
not see this bad behavior in these tests.  The return code for a program can't
be None!
Add mockprogram.py to be used in unit tests (TriBITS #45)

I will use mockprogram.py initially to unit test more new more advanced
features of gitdist that read and adjusts flow control based on ouptut from
git.
Add tests and fix multi-line ouptut (TriBITS #45)

Now I think this is ready to be used to test gitdist.
Add unit tests for --dist-mod-only and make more robust to git versions (TriBITS #45)

Using mockprogram.py for a mock git command, I now have pretty good unit tests
for the --dist-mod-only option.

I also made the function taht gets the tracking branch more robust to
different git versions.  Older git versions would print 'error: ' when a
tracking branch did not exist while git 2.1.0 prints 'fatal: '.  To make this
more robust I changed getCmndOutput() to use subproccess.Popen() and
optionally return the program return code.  I then check the error code to see
if the tracking branch exists.  I manaully tested this with both git 1.7.1 and
git 2.1.0.  I feel the feature is pretty solid now.

Build/Test Cases Summary
Enabled Packages: TriBITS
Enabled all Forward Packages
0) MPI_DEBUG => passed: passed=177,notpassed=0 (0.79 min)
1) SERIAL_RELEASE => passed: passed=177,notpassed=0 (0.72 min)
Other local commits for this build/test group: 6b934e4, a744f20, 8da646b
Make --dist-mod-only process repos with untracked files (TriBITS #45)

The old implementation was not processing repos when only untracked
non-ignored files were present.  That is bad because it is important to see
dirty repos.

I had to update the tests becaue this takes another git command.

Build/Test Cases Summary
Enabled Packages: TriBITS
Enabled all Forward Packages
0) MPI_DEBUG => passed: passed=177,notpassed=0 (0.81 min)
1) SERIAL_RELEASE => passed: passed=177,notpassed=0 (0.71 min)