Ideally, we should create a release branch and complete all release tasks using that branch, including generating all packages and update all docs, and then push the release tag and merge the release branch to master.
However, this cannot be done currently because our build depends on the release tag to generate GitCommitId for $PSVersionTable. and thus the release tag has to be pushed before starting the release tasks.
To break this dependency, we should update Start-PSBuild to accept a GitCommitId string and update the Jenkins build script so that the GitCommitId string can be passed to the build pipeline.
Tasks