01. Create a Repository
1.1 Setup Repository
- Create a new GitHub repository using the template: CSE120-Template.
- Owner: Select the class organization (e.g.,
cse120-ucmor similar) from the dropdown. - Repository Name:
<your-ucm-username>-github-workshop(e.g.,mpisman-github-workshop). - Visibility: Private.
- Include all branches: No (unchecked).
- Collaborators: Skip adding a partner for now (you will work individually in Part 1).
- Enable GitHub features:
- Go to Settings > General > Features
- Ensure Wikis, Issues, Projects, and Discussions are enabled.
- Create a new project board:
- Go to Projects tab > New project.
- Select CSE120 Project Board Template from the organization templates (you may need to click on the organization name tab in the template picker).
- This template is located at https://github.com/orgs/cse120-ucm/projects/1.
- Rename default branch to
main(if it isn't already).
1.2 Issue Types and Labels
Since you created your repository within the class organization, you inherit the standard issue types and labels automatically. These types help categorize the work you will be doing.
Default Issue Types
GitHub now uses Issue Types to distinguish between different kinds of work items. You will see these options when creating a new issue:
- Bug: An unexpected problem, error, or crash that needs fixing.
- Feature: A new capability or functionality being added to the project.
- Documentation: Improvements or additions to wikis, READMEs, or other docs.
- Task: A general unit of work, often for maintenance or setup (like "Update CI config").
- Discussion: Further information is requested or issue requires a discussion.
Custom Labels
While you have a set of default labels (like bug, documentation, enhancement), you are free to create custom labels to help organize your specific project workflow. For example, your team might find labels like frontend, backend, or priority:high useful.
To manage labels: 1. Navigate to Issues tab > Labels. 2. Click New label to create a custom one.
Once you are ready, proceed to Step 2: Create Milestones and Issues.