title: How to have Jenkins not clean a git workspace
body: <p>Our Jenkins job that builds our project triggers on changes in the master of several GIT repositories. When it starts building it cleans the workspace of all the repo checkouts. We want to use the job only for clean build on request and by default for incremental builds. Some of our generated code is (still) generated inside the checkout, is therefor cleaned and therefor required to be regenerated and built each run. This takes quite a bit of time we would like to get rid of.</p>
  
  <p>Note the last line of this part of the build log:</p>
  
  <pre><code>Started by user jenkins
  Building on master
  Checkout:WORK_PLATFORM3_REL_BUILD / /home/jenkins/data/WORK_PLATFORM3_REL_BUILD - hudson.remoting.LocalChannel@116fc35
  Using strategy: Default
  Last Built Revision: Revision 5479a644c63e128efb4fa61c00b4a708d8ae594f (origin/master)
  Checkout:xxxxxx / /home/jenkins/data/WORK_PLATFORM3_REL_BUILD/xxxxxxx - hudson.remoting.LocalChannel@116fc35
  Fetching changes from 1 remote Git repository
  Fetching upstream changes from ssh://jenkinslinux@git.xxxxxxx.com:29418/xxxxxxx
  Commencing build of Revision 5479a644c63e128efb4fa61c00b4a708d8ae594f (origin/master)
  Checking out Revision 5479a644c63e128efb4fa61c00b4a708d8ae594f (origin/master)
  Cleaning workspace
  </code></pre>
  
  <p>I cannot find a setting in the job's configuration to disable this "cleaning workspace" nor any global setting to change this.</p>
  
  <p>Is there a solution?</p>
  
  <p>BTW, we're running Jenkins 1.410 (off topic: will upgrading to latest version be a trivial task?)</p>