Add internal enviroment variables to note message
Modifies Git Publisher note msg log
expand parameters in the remote branch name of merge options
also expand the name being displayed in the logs
[FIXES JENKINS-14321] - Do not re-use last build's environment for remote polling

Fixes, the original 'fix' in 3d9a73d26b129249c51fccfca6060280197b25eb it appears
that a crucial check on the newly implemented argument wasn't actually implemented.

I've changed the condition to test this rather than set 'b' to null if reuseLastBuildEnv
is set to true as 'b' is de-referenced later in the getPollEnvironment method.

Rather worryingly it appears that the existing code in getPollEnvironment tests at one
point whether 'b' is null, but then later (outside this test) derefences it anyway, but
this commit does not make that particular problem any worse.

Signed-off-by: ciaranj <ciaranj@gmail.com>
Fixes potential NPE if no previous build exists

Signed-off-by: ciaranj <ciaran.jessup@thisisnumero.com>
[FIXED JENKINS-15160] Pass combineCommits to action
Merge pull request #129 from cjo9900/JENKINS-15160-2

[FIXED JENKINS-15160] Pass combineCommits to action
replace CLI GitAPI Implementatoin by alternate JGitAPIImpl
implement "checkout" using JGit
implement add() and commit() using JGit
remove getGitExe() from IGitAPI
let GitAPI implementation create an instance for subdirectory by itself
use JGit commands to implement generic git operations
dead code
use ObjectId to specify commit references
move git-plugin specific logic back to GitSCM
GitAPI cleanup + unit test coverage
Print the actual number of repos changes are being fetched from.

Use repos.size() instead of the (implicit) toString().
some more IGitAPI cleanup and unit test coverage
Don't extends HudsonTestCase (make test quicker)
move git-plugin specific checkout logic (delete local branch then re-create) into GitSCM
document showRevision as API method