Assume during our build someone else pushed unrelated changes (commitFile1) to the remote repo. So our own changes committed during the build (commitFile2) cannot be pushed back to the remote origin.
To resolve this we can fetch the remote changes and rebase our own changes just before the push of the branches.
Provide a checkbox that will allow "Rebase before push" as an option in the "Branches to push to remote repositories". When enabled we try to rebase before the actual push.