GitHub is the world's largest host for Git repositories and the central platform for software collaboration. It is where millions of developers store their code, contribute to open source projects, review each other's work, track bugs, and coordinate releases. If Git is the tool that tracks your changes locally, GitHub is the platform that makes that work visible, shareable, and collaborative on a global scale.
GitHub Is Not Git
This distinction matters and is worth stating clearly. Git is the version control system — the software that runs on your machine and tracks changes. It was created by Linus Torvalds and exists independently of any platform.
GitHub is a hosting service built on top of Git. It stores Git repositories on remote servers, adds a web interface for browsing and managing them, and layers on a full suite of collaboration tools — pull requests, issues, code review, project boards, and more — that Git itself does not have.
Git can be used without GitHub. GitHub cannot exist without Git. You can host Git repositories on GitLab, Bitbucket, or your own server — GitHub is simply the most widely used option.
What GitHub Provides
GitHub adds four broad categories of functionality on top of bare Git hosting:
| Category | What It Includes |
|---|---|
| Repository hosting | Remote storage for Git repositories, accessible from anywhere |
| Collaboration tools | Pull requests, code review, forks, and branch management through a web interface |
| Project management | Issues, labels, milestones, project boards, and discussions |
| Automation and integration | GitHub Actions for CI/CD, webhooks, and integrations with third-party services |
Not all of these need to be used at once. Many developers start with just the repository hosting and pull request workflow, then adopt other features as their needs grow.
Key Concepts
Before diving into any specific GitHub feature, a few core concepts appear everywhere on the platform and are worth understanding upfront.
Repository
A GitHub repository is a remote home for a Git project. It stores the complete history of the project — every commit, every branch, every tag — and makes it accessible through both the web interface and the Git command line. A repository can be public (visible to anyone) or private (visible only to invited collaborators).
Profile
Your GitHub profile is your identity on the platform. It shows your public repositories, contribution history, pinned projects, and activity over time. For many developers, a GitHub profile serves as a public portfolio — evidence of the projects they have worked on and contributed to.
Fork
A fork is a personal copy of someone else's repository that lives under your own GitHub account. Forking allows you to make changes to a project you don't have write access to, and propose those changes back to the original through a pull request. It is the standard mechanism for contributing to open source projects.
Pull Request
A pull request (PR) is a proposal to merge changes from one branch or fork into another. It is GitHub's primary collaboration primitive — the place where code is reviewed, discussed, and refined before it is merged. Pull requests are central to the GitHub Flow and to open source contribution.
Issues
Issues are GitHub's built-in task and bug tracker. They are used to report bugs, request features, ask questions, and track work. Issues can be labelled, assigned to people, linked to milestones, and referenced in commits and pull requests.
Stars
Starring a repository is GitHub's equivalent of bookmarking or liking. It signals interest in a project and lets you find it easily later. A high star count is generally an indicator of a project's popularity and community trust.
Watching
Watching a repository subscribes you to its activity — you receive notifications when issues are opened, pull requests are created, and comments are posted. You can configure how much or how little you are notified.
GitHub and Open Source
GitHub is the primary platform for open source software. The vast majority of major open source projects — including Git itself, Linux, Node.js, React, TypeScript, and thousands of others — are hosted and developed on GitHub.
This makes GitHub not just a hosting service but an ecosystem. Being able to read other people's code, follow how issues are discussed, study how pull requests are reviewed, and contribute small fixes are all valuable learning experiences available to anyone with a GitHub account.
GitHub's Free Tier
GitHub offers substantial functionality for free:
- Unlimited public repositories.
- Unlimited private repositories (with some limitations on advanced features).
- Collaboration tools including pull requests, issues, and code review.
- GitHub Actions (with a monthly limit of free minutes).
- GitHub Pages for hosting static websites.
Paid plans add more Actions minutes, advanced security scanning, larger storage, and enterprise management tools. For individual developers and small teams, the free tier covers everything covered in this research series.
GitHub vs. Other Platforms
GitHub is not the only option for hosting Git repositories. The main alternatives are:
| Platform | Notable Characteristics |
|---|---|
| GitHub | Largest community, most open source projects, tightest GitHub Actions integration |
| GitLab | Strong built-in CI/CD, can be self-hosted, popular in enterprise environments |
| Bitbucket | Tight Atlassian integration (Jira, Confluence), popular in corporate settings |
The core Git workflow is identical across all three. The differences are in the collaboration features, pricing, and ecosystem integrations. For most developers — especially those working on or studying open source — GitHub is the natural starting point.
Why GitHub Matters for Developers
Beyond hosting code, GitHub has become a professional infrastructure for software developers:
- Portfolios — public GitHub profiles are commonly reviewed by employers and clients as evidence of real work.
- Open source contribution — GitHub is where you discover projects, report issues, and submit pull requests that can be seen by thousands.
- Community — GitHub Discussions, issue threads, and PR comments are where technical decisions are made publicly and where you can learn from experienced developers.
- Tool integration — virtually every development tool, CI service, and deployment platform integrates directly with GitHub.
Understanding GitHub is not just about storing code remotely. It is about participating in the infrastructure that modern software development runs on.