This post was most recently updated on November 12th, 2019.Reading Time: 2 minutes.
Ran into this one when trying to push my merge from upstream. I was adhering to my own instructions (see below for a link), but got the error (further below) that stopped me from using GitHub Desktop to push (sync) at all.
So, the error I ran into:
! [remote rejected] master -> master (refusing to allow an integration to create or update .github/workflows/main.yml) error: failed to push some refs to [repositoryname]
This was take weird – I hadn’t made any changes to said file, and I don’t think anyone else had, either.
This is likely an unintended feature of GitHub, and GitHub Desktop can’t do anything about it. However, there’s a nifty workaround available!
A number of GitHub issues propose that this issue can be circumvented by actually committing a change removing the yaml file in question from the repository. However, if you’re merging from an upstream repository, you don’t usually want to do this! So we need to find another way.
Whereas GitHub Desktop is using OAuth, and running into this issue, Git Bash (the console application you use to merge upstream in my earlier example as well) doesn’t. And it’s also free from this issue, as it’s not considered “an integration”, and whatever it’s trying to do (or not do) to the yaml file just works.
So, in short – instead of using GitHub Desktop, open Git bash and run this:
cd [yourprojectpath] # after this, make sure the command line shows the right branch name! git push
Et voila! You should be good.
- How to resolve “Microsoft.Data.SqlClient.SqlException (0x80131904): Cannot insert explicit value for identity column in table when IDENTITY_INSERT is set to OFF” - June 30, 2020
- How to resolve persistent “Build started… Build failed.” when trying to run Entity Framework Core commands? - June 24, 2020
- SharePoint Home Sites – a Game Changer? - June 16, 2020