GitHub Issues, Projects & Discussions
π‘ Intermediate
π Definition
GitHub Issues is an integrated bug tracking and feature request system built directly into GitHub repositories. GitHub Projects provides interactive Kanban boards for agile sprint planning, and GitHub Discussions serves as a community forum for Q&A, ideas, and open-ended conversations.
π Multilingual Explanation
English
GitHub Issues track bugs, enhancements, and tasks. Issues support Markdown formatting, labels (bug, documentation), assignees, and milestones. You can automatically close an issue from a commit or Pull Request by typing magic keywords like Fixes #12 or Closes #45 in commit messages or PR descriptions.
Hindi
GitHub Issues aapke project ke bugs, feature requests, aur task list ko track karta hai. Commit message ya PR mein Fixes #12 likhne se Issue #12 PR merge hote hi automatically closed ho jata hai. GitHub Projects Kanban board (To Do, In Progress, Done) provide karta hai.
Marathi
GitHub Issues mule bugs aani navin features track karta yetat. Commit kiva PR madhye Fixes #12 lihilyas Issue #12 swatahch close hoto. GitHub Projects madhye Kanban board dware kaam vyavasthit organize karta yete.
Hinglish
Project bugs aur tasks manage karne ke liye GitHub Issues use hota hai. Good open-source practice ke mutabiq pehle Issue open karein, use discuss karein, aur jab PR submit karein toh PR description mein Closes #IssueNumber likhein taaki issue auto-close ho jaye.
π€ Why Do We Use Them?
Without issue tracking, software bugs get lost in emails or chat messages. GitHub Issues links bugs directly to the exact code commits and Pull Requests that resolve them.
π§ Simple Explanation
Think of GitHub project management tools like an office workspace:
- GitHub Issues: Sticky note bug tickets attached to the bulletin board.
- GitHub Projects: A digital Kanban board with 3 columns (To Do, In Progress, Done) where team members drag tickets across columns.
- GitHub Discussions: The coffee break room where team members brainstorm ideas without clogging up bug tracking.
π Magic Closing Keywords in Commit Messages
When you push a commit or merge a Pull Request containing specific closing keywords followed by an issue number #N, GitHub automatically closes that issue!
| Closing Keywords | Example Usage | Action Taken by GitHub |
|---|---|---|
close, closes, closed |
Closes #12 |
Closes Issue #12 when PR merges |
fix, fixes, fixed |
Fixes #45 |
Closes Issue #45 when PR merges |
resolve, resolves, resolved |
Resolves #89 |
Closes Issue #89 when PR merges |
Example Commit Message:
git commit -m "Fix navbar mobile overflow bug (Fixes #24)"
π‘ Practical Workflow Example
- Create Issue: User submits Issue
#14titled βLogin button non-responsive on mobile devicesβ. - Assign & Label: Maintainer adds labels
bugandmobile, and assigns developer Rahul. - Develop & Commit: Rahul creates branch
fix-issue-14, fixes code, and commits:git commit -m "Correct button touch event handler (Fixes #14)" - Merge PR: Rahul opens PR. When PR merges into
main, GitHub automatically marks Issue#14as Closed!
π Issue Labels & Milestones
- Labels: Color-coded tags categorizing issues (
bug,enhancement,documentation,good first issue). good first issueLabel: Standard tag used across open-source projects marking easy beginner-friendly tasks for first-time contributors.- Milestones: Target release deadlines (e.g.
Version 1.0 Release) grouping related issues together.
π GitHub Issue Interface
Issue #14: Login button non-responsive on mobile devices [Open]
Labels: [bug] [mobile]
Assignee: @Rahul
Milestone: Version 1.0 Release
β οΈ Common Mistakes
- Forgetting
#in Magic Keywords: WritingFixes 14instead ofFixes #14. Without the hash#symbol, GitHub cannot detect the issue reference! - Using Issues for General Chat: Posting general beginner questions in Issues when repository has GitHub Discussions enabled.
π‘οΈ Safety / Important Notes
- Issue numbers
#Nshare a numerical sequence with Pull Request numbers#Nwithin the same repository.
π Real-World Usage
Tech organizations manage entire product roadmaps using GitHub Projects, tracking hundreds of bugs and feature releases across developer teams.
π§ͺ Try It Yourself
- Go to your
github-practicerepository on GitHub. - Click the Issues tab -> Click New issue.
- Create an issue titled
Add footer contact linksand add labelenhancement. - Note down the issue number (e.g.
#1).
π― Mini Challenge
Make a edit in your local project, commit with message Add footer links (Fixes #1), push to GitHub, and verify on GitHub web that Issue #1 was automatically closed!
π Related Topics
π§ Navigation
| β Home | β Previous: SSH Keys | Next: GitHub Pages β |