anchor.diff:  Uses the following environment variables (some of which are overridden by WSTargets options):
     * BUILD_NUMBER: the build number to use (last component of the version).
       Automatically set by Jenkins.
  -  * PushOnlyAllowedChanges: whether to check that we're only committing paket.lock.
  -    Default: true
  +  * BuildBranch: the name of the branch to switch to before building, and to push to on success.
  +    Default: current branch
     * PushRemote: the name of the git remote to push to
       Default: origin
     * NuGetPublishUrl: the URL of the NuGet server
  
positive.code:         Attributes : seq<Attribute>
          StrongName : bool
          BaseBranch : string
          PushByMergingOnto : option<string>
          PushOnlyAllowedChanges : bool
          PushRemote : string
      }
  
  
negative.code: 
  type WSTargets with
  
      static member Default (version: Paket.SemVerInfo) =
          let buildBranch = environVarOrNone "BuildBranch"
          let version =
              match buildBranch with
              | Some b -> Paket.SemVer.Parse (version.AsString + "-" + b)
              | None -> version
          {
              Version = version
              BuildAction = BuildAction.Solution "*.sln"
              Attributes = Seq.empty
              StrongName = false
              BaseBranch = Git.Information.getBranchName "."
              WorkBranch = buildBranch
              MergeMaster = buildBranch = Some "staging"
              PushRemote = environVarOrDefault "PushRemote" "origin"
          }
  
  