KentonWhite/ProjectTemplate

Discussion: Force quality control

Closed this issue · 6 comments

Report an Issue / Request a Feature

I'm submitting a (Check one with "x") :

  • bug report
  • feature request

Issue Severity Classification -

(Check one with "x") :

  • 1 - Severe
  • 2 - Moderate
  • 3 - Low
Expected Behavior

Currently everyone with write access to the repository can create commits directly on the master branch. I think we should set the GitHub settings such that commits can only be made through a pull request by making master a protected branch.
Also, I think we should enforce at least one approving review before a pull request can be merged. This way no changes can be made to the code without a second person looking into those changes.

It's not that I distrust anyone but a mistake is easily made and this way at least one other person has looked at the mistake and not realised the implications if it was merged after all. So it's more a distrust towards my own code ;-)

Yep, I agree 100%. This is very traditional of most high-traffic collaborative repositories. Like you said, it's not about distrust, but it does drive more eyes on a merge into the master code resulting not only in mistakes being identified but even helps drive standardization of the documentation & code base.

Done!

It appears that the forced check on Travis don't work. I added a new commit but it says "Waiting for status to be reported" and I don't see any tasks running in Travis.. @KentonWhite Did you change the requirements for the checks or is this an unrelated issue?

I may have made too many status checks on the protected branch. Can you try pushing a dummy commit and see if that retriggers the Travis build.

It appears Travis still doesn't react to a new commit.

It looked like the web hooks weren't communicating with Travis. I've run some tests this morning and the web hooks are no working for me. That doesn't mean they won't work for you! I'll close this for now and if there is still a problem I'll raise an issue with GitHub support.