It is how Github branch protection is designed.

This is my explanation from the information provided by you :

- The Pull Request you mentioned had 11 commits and when you tried to
merged it, I assume you tried to squash it to a single commit. It generates
a new SHA.
- When you are pushing that SHA to origin develop, GitHub could not find
that SHA in the list of approved Pull Requests SHAs.
- This is why it blocked your push to develop origin.

Workaround:
- This would have worked if there was only one commit in the Pull Request:
- If you still need to use the command line, you can create the Pull
Request with only one commit (after squashing).
- I generally, commit --amend over the last commit SHA and then force push,
so that it stays as a single commit.

Regards
Naba


On Thu, Oct 31, 2019 at 6:56 PM Bruce Schuchardt <bschucha...@pivotal.io>
wrote:

> I just want to know why my PR that passed the tests and was approved
> couldn't be pushed from the command line Naba
>
> On 10/31/19 5:11 PM, Nabarun Nag wrote:
> > Hi Bruce,
> >
> > This was what was discussed in multiple email chains last week. GitHub
> > branch protection was enabled on the develop branch.
> >
> > Command-line and the merge button on the website have the same effect.
> > This
> > has now being implemented in a lot of Apache projects and we are
> > implementing it as the geode community is growing, to prevent
> > unintentional
> > red pipelines.
> >
> > It is a small inconvenience paid for saving a lot of our time in
> detecting
> > which commit caused the red pipeline or which commit introduced a flaky
> > test. Our time can be used in other productive work.
> >
> > Kindly reconsider as a majority of us have already moved to the GitHub
> > merge system on the website.
> >
> > Regards
> > Nabarun
> >
> >
> >
> > On Thu, Oct 31, 2019 at 4:45 PM Robert Houghton <rhough...@pivotal.io>
> > wrote:
> >
> >> Was there a pull request for this SHA?
> >>
> >> On Thu, Oct 31, 2019, 16:36 Bruce Schuchardt <bschucha...@gmail.com>
> >> wrote:
> >>
> >>> I just completed GEODE-7358 and was prevented from pushing from the
> >>> command-line. The Merge button on github worked, but why can't I have
> >>> command-line control of the process? I don't like giving control of my
> >>> merge to a web-site button. We should revert this change!
> >>>
> >>>
> >>> geode> git push --no-verify origin develop
> >>> Enumerating objects: 352, done.
> >>> Counting objects: 100% (352/352), done.
> >>> Delta compression using up to 8 threads
> >>> Compressing objects: 100% (192/192), done.
> >>> Writing objects: 100% (223/223), 153.60 KiB | 9.04 MiB/s, done.
> >>> Total 223 (delta 106), reused 59 (delta 3)
> >>> remote: Resolving deltas: 100% (106/106), completed with 93 local
> >> objects.
> >>> remote: error: GH006: Protected branch update failed for
> >>> refs/heads/develop.
> >>> remote: error: 4 of 4 required status checks are expected. At least 1
> >>> approving review is required by reviewers with write access.
> >>> To ssh://github.com/apache/geode.git
> >>> ! [remote rejected] develop -> develop (protected branch hook
> >>> declined)
> >>> error: failed to push some refs to 'ssh://
> >> g...@github.com/apache/geode.git'
> >>>
>

Reply via email to