Howto have Jenkins not clean a git workspace

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.

Note the last line of this part of the build log:

  • Other consequences of `git push --force`?
  • Git create branch from current checked out master?
  • undo git update-index --assume-unchanged <file>
  • git prompting me before commit
  • Git character encoding with Spanish characters
  • Get git current branch/tag name
  • 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
    

    I cannot find a setting in the job’s configuration to disable this “cleaning workspace” nor any global setting to change this.

    Is there a solution?

    BTW, we’re running Jenkins 1.410 (off topic: will upgrading to latest version be a trivial task?)

  • Merge different issues on github
  • Can “git pull --all” update all my local branches?
  • git-flow: How to prevent some changes made at release branch from merging back to development
  • Continuous integration for student assignments
  • Jenkins with multiple projects and git branches
  • Xcode 5: The repository could not be reached
  • One Solution collect form web for “Howto have Jenkins not clean a git workspace”

    There is a check box ‘clean after checkout’ if you click the second ‘Advanced’ button under ‘source code management’ -> ‘Git’ settings in job configure page. Make sure this checkbox is not ticked for your case.

    Git Baby is a git and github fan, let's start git clone.