GitHub Usage
Issues
Section titled “Issues”An issue is a way of planning tasks and tracking bugs. You can create issues in your repository to plan, discuss, and share tasks. When opening an issue, you should add a title and description to clearly summarize the task. The Assignees feature is helpful for delegating tasks to programmers within your team. The Milestones feature can be used to group issues with specific deadlines and track progress.
Issue templates are helpful for providing guidance for opening issues and encourage students to specify the content of their issue.
To create issue templates, create a .github/ISSUE_TEMPLATE folder and add Markdown files for different types of issues.
Here’s an example issue template:
name: Storydescription: Create a small story task.title: "[Story] "labels: ["Story"]body: - type: textarea id: description attributes: label: Story Description description: Specific task (e.g., Tune PID gains for intake). validations: required: true - type: input id: estimate attributes: label: Time Estimate description: Max 2 days (e.g., "1-2 hours"). - type: input id: deadline attributes: label: Deadline description: Date that this task should be completed by. - type: textarea id: acceptance_criteria attributes: label: Acceptance Criteria description: How to verify completion (e.g., "Unit tests pass, simulation works"). - type: textarea id: implementation_notes attributes: label: Implementation Notes description: Code changes, tests, or steps needed. - type: textarea id: related_links attributes: label: Related Links description: Links to relevant code files, PRs, or docs.See Configuring issue templates for your repository for a more in-depth guide to using issue templates.
Pull Requests
Section titled “Pull Requests”Pull requests are proposals to merge changes on a separate branch into the main branch of a repository, providing a space for comments and suggestions to be made and implemented and ensuring that any code that goes on the robot is reviewed beforehand.
Pull requests help programmers review changes before merging them, catch bugs early, and maintain code quality.
Pull request templates encourage students to provide context for their changes and offer checklists to enforce programming standards.
To create a template, create a .github/pull_request_template.md file.
The template could ask to include:
- A description of changes made
- A link to any issues this pull request closes
- A checklist to verify code standards and successful builds
Here’s an example pull request template:
## Description
Briefly describe the changes made in this PR.
## Changes Made
- List the key changes, files modified, or features added- Be specific about what was implemented
## Testing
How have you tested these changes?- Unit tests added- Tested on robot or simulation
## Related Issues
Link to any related issues or PRs:- Closes #issue_number- Related to #issue_number
## Checklist
- [ ] Code follows project coding standards- [ ] No new linting errors- [ ] Tests pass (`./gradlew test`)- [ ] Code builds successfully (`./gradlew build`)To review a pull request, read the pull request title and description, verify that all CI checks passed, and open the Files changed tab to view the diff. You can comment on specific lines and suggest changes.
GitHub Projects
Section titled “GitHub Projects”GitHub Projects are a tool for project management that integrates with your issues and pull requests. You can create customized tables, boards, and roadmaps to plan and track changes.
Read more about projects here