Project SANS_Commit

This job executes all unit tests when new code is committed to a branch that matches the pattern */develop.
The new code is first merged into the develop branch, and if all the unit tests pass the new develop branch is pushed back to acdl.


Bash Completion
Bash completion allows the use of tabs to complete makefile and git commands. It can be installed with

brew install bash-completion

then adding
if [ -f $(brew --prefix)/etc/bash_completion ]; then
. $(brew --prefix)/etc/bash_completion
fi

to ~/.profile or ~/.bash_profile.


Verifing SANS
In the SANS root directory, execute the commands:

mkdir -p build/deploy
cd build/deploy
cmake ../../
make check

If you want parallel build you should pass the -j flag to make, e.g. to compile with 4 processes

make -j 4 check


g++ colors
g++ 4.9 and above provides coloring which can be enabled by adding the following to your .bashrc file:

export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01'


git Source Control Managment
If you like color in your terminal, you can enable coloring with git using the commands

git config --global color.diff auto
git config --global color.status auto
git config --global color.branch auto

Coloring can be disabled by changing 'auto' to 'never'.


This link provides some useful comparisons between git and svn commands:

http://git.or.cz/course/svn.html


SANS Git Basics
To push changes, you first run

git add 'filenames'

where filenames are all the files you want to add to the repo. You can
add one file at a time as well. Then you run

git commit

type in a message about what it is you are committing. If you are only
committing files that are already in the repo but you have modified
them, you can run "git commit -a" to automatically add all of the
modified files.

This will save everything to your local repo. To share your changes with
everyone else you run:

git push

To pull changes other people have made you run

git update

It's good practice to update after you receive a success email from jenkins.
You might have to commit your changes loally before updating in case there are merge conflicts.


Coverage Information
The latest coverage information is available here.
Configuration Matrixmacysmacys_VMreynoldsreynolds-centOS7reynolds-centOS8reynolds-rhel7reynolds-ubuntu16reynolds-ubuntu18
coverage_gnu9
release_clang
release_intel
release_gnu48
release_gnu5
release_gnu7
release_gnu8
release_gnu9
release_gnu10
release_gnu11
Test Result Trend
Static Analysis Warnings Trend