Search code examples
c#gitenvironment-variablesgitversiongit-detached-head

What does the environment variable IGNORE_NORMALISATION_GIT_HEAD_MOVE do?


I have a C# code base that uses GitVersion.MsBuild. Sometimes my Jenkins build server gives me this error:

GitVersion.BugException: GitVersion has a bug, your HEAD has moved after repo normalisation.
To disable this error set an environmental variable called IGNORE_NORMALISATION_GIT_HEAD_MOVE to 1

This often happens when building a feature branch that is not based on the latest master (i.e., master has moved since the feature branch was made).

The error message describes a suggested fix/workaround, but I am hesitant to do this because I don't know what environmental variable IGNORE_NORMALISATION_GIT_HEAD_MOVE does, and I cannot find a description of it anywhere.

If I set IGNORE_NORMALISATION_GIT_HEAD_MOVE to 1, what side effects does this have?

Thanks in advance!

EDIT: I asked the same question in an issue on GitVersion's GitHub.


Solution

  • According to the maintainers of GitVersion, this variable just suppresses a BugException that otherwise gets throw in this situation.

    See issue here: https://github.com/GitTools/GitVersion/issues/2934