minimal best practices
- branch & release protection
- github flow with linear, conventional commits
- codeQL merge protection
requires zero maintenance & setup1
Download ZIP
add a contribution guide & security policy.2
Head to repository main page:
- Above the list of files
- Select
Add file>Create new file
For each document:
- Add
nameandcontents. - Click
Commit Changes - copy paste each documents
commit msgfield
into thecommit messagefield in form. - Select
Commit Changes
add the following:
file name:.github/CONTRIBUTING.mdcontents:CONTRIBUTING.mdcontentcommit msg:docs: added contribution guide
file name:.github/SECURITY.mdcontents:SECURITY.mdcontentcommit msg:docs: added security policy
- Head to
Settings>Rules>Rulesets - Select
New Ruleset>Import a ruleset - Import each
<ruleset>.jsonincluded here.
- Head to
Settings>Code Security>Private vulnerability reporting - Select
Enable
must use default setup, not workflow
- Head to
Settings>Code Security>Code Analysis - Select
Tools:CodeQL>Setup>Default - Select
Enable/Submitw/o changing anything
MIT-0 No Attribution
Copyright 2O24
Nicholas Kyriakides, @nicholaswmin
This work (entire project, repository or all files in "gist")
is licensed under the terms of the MIT-0 license.
For a copy, see <https://opensource.org/licenses/MIT-0>.
inspired by dziuba: who needs process? (2011) & ossf:scorecard
Footnotes
-
rules that might need a code/dependency update in the future or require any form of collaborator setup are excluded.
*allowed: CodeQL but only when using the default setup, since its configuration is automatically managed by Github.
*excluded: any rules relying on custom workflows, their versioned@actions/checkout-v<x>steps require updates.
*excluded: signed-commits require local setup ↩ -
required documentation like
LICENSEare out of scope of this guide but assumed to exist and correctly configured. ↩