Skip to content

The tools you need to build what you want.

GitHub Collaboration Icon


Contribute to projects quickly with automatic environment setup.
Make sure you see the changes you care about.
Build community around your code.
Pull requests display diffs to compare the changes you made in your topic branch against the base branch that you want to merge your changes into.
Reviews allow collaborators to comment on the changes proposed in pull requests, approve the changes, or request further changes before the pull request is merged.


Code, build, test, debug, and deploy with an instant cloud development environment. Spin up a Codespace in seconds and access from any device.

Learn more

Pull requests

Allow contributors to easily notify you of changes they've pushed to a repository – with access limited to the contributors you specify. Easily merge changes you accept.

Learn more


Get updates on the GitHub activity you've subscribed to. Use the notifications inbox to customize, triage, and manage your updates.

Learn more

Code review

Review new code, see visual code changes, and confidently merge code changes with automated status checks.

Learn more

Code review assignments

Assign code reviews to make it clear which team members should submit their review for a pull request.

Learn more

Code owners

Automatically request reviews–or require approval—by selected contributors when changes are made to sections of code that they own.

Learn more

Draft pull requests

Use a pull request as a way to discuss and collaborate, without submitting to formal review or risking an unwanted merge.

Learn more

Protected branches

Enforce restrictions on how code branches are merged, including requiring reviews, or allowing only specific contributors to work on a particular branch.

Learn more

Team discussions

Post and discuss updates within your entire GitHub organization, or just your team. Notify participants with updates, and link from anywhere.

Learn more

Team reviewers

Request a team on GitHub to review your pull request. Members of the team will get a notification indicating that you've asked for their review.

Learn more

Multiple assignees

Assign up to 10 people to work on a given issue or pull request, letting you more easily track who's working on what.

Learn more

Multiple reviewers

Request review from multiple contributors. Requested reviewers will be notified that you've asked for their review.

Learn more

Multi-line comments

Clarify code reviews by referencing or commenting on multiple lines at once in a pull request diff view.

Learn more

Public repositories

Work with any GitHub member on code in a public repository you control. Make changes, open a pull request, create an issue, and more.

Learn more
GitHub Automation and CI/CD Icon

and CI/CD

Automate everything: CI/CD, testing, planning, project management, issue labeling, approvals, onboarding, and more.
Standardize and scale
best practices, security, and compliance across your organization.
Get started quickly with thousands of actions from partners and the community.
Automate everything: CI/CD, testing, planning, project management, issue labeling, approvals, onboarding, and more.


Automate all your software development workflows. Write tasks and combine them to build, test, and deploy faster from GitHub.

Learn more


Host your own software packages or use them as dependencies in other projects. Both private and public hosting available.

Learn more


Create calls to get all the data and events you need within GitHub, and automatically kick off and advance your software workflows.

Learn more

GitHub Pages

Create and publish websites about yourself, your organization, or your project directly from a GitHub repository.

Learn more

GitHub Marketplace

Start with thousands of actions and applications from our community to help you build, improve, and accelerate your automated workflows.

Learn more


Dozens of events, and a Webhooks API, help you integrate with and automate work for your repository, organization, or application.

Learn more

Hosted runners

Move automation to the cloud with on-demand Linux, Windows, and MacOS environments for your workflow runs, hosted by GitHub.

Learn more

Self-hosted runners

More environments and fuller control with labels, groups, and policies to manage runs on your own machines. Plus, the runner application is open source.

Learn more

Secrets management

Share, update, and automatically sync secrets across multiple repositories to increase security and reduce workflow failures.

Learn more


Meet security and compliance requirements for delivery with secrets and protection rules.

Learn more


View which version of your code is running in an environment, including when and why, plus logs for review.

Learn more

Workflow visualization

Map workflows, track their progression in real time, understand complex workflows, and communicate status with the rest of the team.

Learn more

Workflow templates

Standardize and scale best practices and processes with preconfigured workflow templates shared across your organization.

Learn more


Manage Actions usage and permissions by repository and organizations, with additional policies for fork pull requests.

Learn more
GitHub Security Icon


Secure code as you write it. Automatically review every change to your codebase and identify vulnerabilities before they reach production.
Understand and address any vulnerabilities in your open source dependencies.
Automatically detect and deactivate secrets committed to your repos.
Automatically review every change to your codebase and identify vulnerabilities before they reach production.
Understand and address any vulnerabilities in your open source dependencies.

Private repos

Host code that you don't want to share with the world in private GitHub repos only accessible to you and people you share them with.

Learn more


Add an extra layer of security with two -actor authentication (2FA) when logging into GitHub. Require 2FA and choose from TOTP apps, security keys, and more.

Learn more

Required reviews

Ensure that pull requests have a specific number of approving reviews before collaborators can make changes to a protected branch.

Learn more

Required status checks

Ensure that all required CI tests are passing before collaborators can make changes to a protected branch.

Learn more

Code scanning

Find vulnerabilities in custom code using static analysis. Prevent new vulnerabilities from being introduced by scanning every pull request.

Learn more

Secret scanning

Find secrets hard-coded in your public and private repositories. Revoke them to keep access to the services you use secure.

Learn more

Dependency graph

See the packages your project depends on, the repositories that depend on them, and any vulnerabilities detected in their dependencies.

Learn more

Dependabot alerts

Get notified when there are new vulnerabilities affecting your repositories. GitHub detects and alerts users to vulnerable dependencies in public and private repos.

Learn more

Dependabot security and
version updates

Keep your supply chain secure and up-to-date by automatically opening pull requests that update vulnerable or out-of-date dependencies.

Learn more

GitHub Security Advisories

Privately discuss, fix, and publish information about security vulnerabilities found in your repository.

Learn more

GitHub Advisory Database

Browse or search for the vulnerabilities that GitHub knows about. The database contains all curated CVEs and security advisories on the GitHub dependency graph.

Learn more

GPG commit signing verification

Use GPG or S/MIME to sign tags and commits locally. These are marked as verified on GitHub so other people know the changes come from a trusted source.

Learn more

Security audit log

Quickly review the actions performed by members of your organization. Your audit log includes details like who performed an action and when.

Learn more

Enterprise Security:

Additional features available to GitHub
Enterprise customers.
Contact Sales


Control and secure access to organization resources like repos, issues, and pull requests with SAML. And allow users to authenticate with their existing GitHub usernames.

Learn more


Centralize repository management. LDAP is one of the most common protocols used to integrate third-party software with large company user directories.

Learn more

IP allow list

Limit access to enterprise assets to an allowed set of source IPs. The allow list will block access for any IP addresses not included via the web, API, and Git.

Learn more

GitHub Connect

Share features and workflows between your GitHub Enterprise Server instance and GitHub Enterprise Cloud.

Learn more

Audit log API

Keep copies of audit log data to ensure secure IP and maintain compliance for your organization.

Learn more
GitHub Client Apps Icon

Client Apps

Take GitHub with you on any connected device.
Skip the visual UI with a quick, powerful text interface.
Access GitHub from your OS X or Windows desktop.
Get to inbox zero in no time—swipe to wrap up a task or save the notification to come back to it later.
GitHub App Pull Request

GitHub for Mobile

Take your GitHub projects, ideas, and code to go with a fully-native mobile and tablet experience. Triage, review, and merge from anywhere.

Learn more

GitHub CLI

Bring GitHub to the command line. Manage issues and pull requests from the terminal, where you're already working with Git and your code.

Learn more

GitHub Desktop

Simplify your development workflow with a GUI. Visualize, commit, and push changes without ever touching the command line.

Learn more
GitHub Project Management Icon


Keep feature requests, bugs, and more organized with GitHub Issues — engineered for software teams.
Coordinate initiatives big and small with project tables, boards, and tasks lists.
Track what you deliver down to the commit.
GitHub’s planning and tracking features live with your code.
GitHub Project Shipped
Track what you deliver down to the commit.


Visually track issues, pull requests, and notes as cards that you can arrange to suit your workflow.

Learn more


Organize and prioritize your work. Apply labels to issues and pull requests to signify priority, category, or any other information you find useful.

Learn more


Track progress on groups of issues or pull requests in a repository, and map groups to overall project goals.

Learn more


Track bugs, enhancements, and other requests, prioritize work, and communicate with stakeholders as changes are proposed and merged.

Learn more

Unified Contribution Graph

See all of your contributions to GitHub Enterprise and in one place: your profile's contribution graph.

Learn more

Org activity graph

See visualizations of your entire organization or specific repositories, including issue and pull request activity, top languages used, and member activity data

Learn more

Org dependency insights

With dependency insights you can view vulnerabilities, licenses, and other important information for the open source projects your organization depends on.

Learn more

Repo insights

Use data about activity and contributions within your repositories, including trends, to make data-driven improvements to your development cycle.

Learn more


Host documentation for projects in a wiki within your repository. Contributors can easily edit documentation on the web or locally.

Learn more
GitHub Team Administration Icon


Simplify access and permissions management across your projects and teams.
Update permissions, add new users as you grow, and give everyone the exact permissions they need.
Sync with Okta and Azure Active Directory.
Update permissions, add new users as you grow, and give everyone the exact permissions they need.
Quickly and securely manage team permissions.


Set up groups of user accounts that own repositories. Manage access on a team-by-team, or individual user, basis.

Learn more


Easily add GitHub members to your repositories using their GitHub username or email address, and require them to confirm access.

Learn more

Team sync

Enable team synchronization between your identity provider and your organization on GitHub, including Azure AD and Okta.

Learn more

Custom roles

Define users' level of access to your code, data and settings based on their role in your organization.

Learn more

Domain verification

Verify your organization's identity on GitHub and display that verification through a profile badge.

Learn more

Audit Log API

Quickly review the actions performed by members of your organization. Monitor access, permission changes, user changes, and other events.

Learn more

Repo creation restriction

Restrict repository creation permissions to organization owners only—or allow members to create public and private repositories.

Learn more

Notification restriction

Protect information about what your team is working on by restricting email notifications to approved email domains.

Learn more

Ready to get started?


The basics for individuals
and organizations

Join for free


Advanced collaboration for
individuals and organizations

Continue with Team


Security, compliance,
and flexible deployment