This github.com/bcgov Cheatsheet covers:
- a few things to help when you are just starting out
- things to touch base with every time you open or contribute to repository (as a BC Government employee)
All BC Government employees working in github.com/bcgov should be familiar with the full BC-Policy-Framework-For-GitHub
- Create a GitHub account with your work email and "Province of British Columbia" as the company (optional)
- Enable two-factor authentication for your GitHub account
- Join the BCGov Organization (e-mail the BCGov Org contact on the BCGov GitHub Organization page) and any of the appropriate Admin and other teams
- Make sure you have Git installed on your computer
- Choose a path based on whether you are publishing existing code, initiating a new repository or contributing to an outside repository
- Complete your Open Content Assessment Checklist
- Follow GitHub instructions, and select 'BCGov' as the owner for all new repositories
- Pick a repository name that follows best practices—for example typically using lowercase with dashes
- Ensure the repo contains the minimum required content (LICENSE, README.md, CONTRIBUTING.md files)
- Every github.com/bcgov repo must have 3 items:
- LICENSE file
- README file
- CONTRIBUTING file
- Adding a Contributor Code of Conduct to your repository is highly encouraged
- Sample templates are available for all of these 'must have' files
- Ensure authority to LICENSE the code and other non-code content in the repository
- Choose a LICENSE for your code (.md files are considered code). The default is the Apache 2.0 LICENSE
- Apply the Apache 2.0 LICENSE in 1-2-3 easy steps:
- Attach appropriate LICENSE file directly in the repository
- Add the boiler-plate Apache 2.0 LICENSE to the the bottom of your README.md
- Add the boiler-plate Apache 2.0 LICENSE to the comments header of every source code file
- Choose a license for any other content (e.g. docs, wikis and non-code stuff) —the default is Creative Commons Attribution 4.0 International—and add to the footer of your README.md
- Repositories can have multiple licenses, for example if there is a mix of code and non-code or if the repo contains open datasets under more than one license
- Completing the Open Content Assessment Checklist helps determine if content can be posted to GitHub by ensuring:
- The content is free of Personal Information (Privacy)
- The content has been labelled 'Public' using the Information Security Classification Framework (Security)
- The content is fully owned by the B.C. government and/or the B.C. government holds the Intellectual Property/Copyright for the content
- There are no other legal, contractual or policy constraints
- Read more about privacy, security and intellectual property in the BC-Policy-Framework-For-GitHub
- Approvals and minium requirements are set out in the Open Development Standard (pages 14-15)
- BC Government employees are responsible for adhering to any Ministry-specific approvals for working in GitHub
- When you’re consuming, sharing or contributing content to GitHub in your role as a government employee, you must adhere to the BC Pubic Service Standards of Conduct
- It is essential that employees avoid any conflicts of interest when using GitHub, and personal use of GitHub must never be confused with professional use
- Make sure you're familiar with existing OCIO policy on information security before downloading or testing any code
- Be familiar with and follow the various Appropriate Use policies, such as the Social Media Guidelines and the Open Development Standards