How developers work
Support your workflow with lightweight tools and features. Then work how you work best—we'll follow your lead.
Seamless code review
Code review is the surest path to better code, and it’s fundamental to how GitHub works. Built-in review tools make code review an essential part of your team’s process.
Better code starts with a Pull Request, a living conversation about changes where you can talk through ideas, assign tasks, discuss details, and conduct reviews.
See the difference
Reviews happen faster when you know exactly what’s changed. Diffs compare versions of your source code side by side, highlighting the parts that are new, edited, or deleted.
Give clear feedback
Your teammates shouldn’t have to think too hard about what a thumbs up emoji means. Specify whether your comments are required changes or just a few suggestions.
If you’re on the other side of a review, you can request reviews from your peers to get the exact feedback you need.
Comment in context
Discussions happen in comment threads, right within your code. Bundle comments into one review, or reply to someone else’s inline to start a conversation.
Only merge the highest quality code. You can configure repositories to require status checks, reducing both human error and administrative overhead.
Share your work
Want to use GitHub to work on a side project? See how to get started and make your next idea happen.
Manage your ideas
Plan and manage projects from your repositories. Product managers, project maintainers, and engineers can coordinate early, stay aligned, and get more done.
See your project’s big picture
See everything happening in your project and choose where to focus your team’s efforts with Projects, task boards that live right where they belong: close to your code.
Reference every Issue and Pull Request in a card, a drag-and-droppable snapshot of the work your teams do in your repository.
Capture early ideas that come up as part of your standup or team sync, without polluting your issues.
Track and assign tasks
Issues help you identify, assign, and keep track of tasks within your team. You can open an Issue to track a bug, discuss an idea with an @mention, or start distributing work.
Add a milestone to your Issue or Pull Request to organize and track progress on groups of issues or pull requests in a repository.
Assign an Issue or a Pull Request to one or more teammates to make it clear who is doing what work.
Find the right tool for the job
With hundreds of integrations to choose from, the way you work can only get better. You can keep using the tools you like and perfect the way you work with new ones.
Discover new tools
A well-timed integration can complement your workflow and help your team do more. Use apps you know or discover new tools that help your team communicate, automate work, and have a better day.
Made for you, by us
We’re building developer tools, too. We hope they help you work on projects of any size and share ideas with your friends and coworkers. Try them out or help us build them.
The human side of software
Behind every project is a group of living, breathing humans, which makes building software as much about managing people as it is about code. Whether you’re on a team of two or two thousand, we can help support your people.
Manage and grow teams
Help people get organized with GitHub Teams, level up access with administrative and user roles, or grow your project with repository invitations.
Keep conversations on topic
It’s easy to get off topic when lots of people are involved. Moderation tools, like Pull Request and Issue Locking, help your team stay focused on code. And if you maintain an open source project, user blocking ensures your community stays healthy.
See who’s behind the project
Show what’s behind the green squares on your GitHub profile with your public activity and proudest moments. Pin your favorite projects to your profile or browse others’ timelines to see what projects they’ve shaped.
Documentation alongside your code
Quality documentation is a hallmark of any healthy software project. On GitHub, you can create well-maintained docs and make sure they receive the high level of care they deserve.
Host your documentation directly from your repositories with GitHub Pages. Use Jekyll as a static site generator and publish your Pages from the `/docs` folder on your `master` branch. Learn more about publishing documentation on GitHub Pages.
Say hello to the world
In need of a site for your project? You can also host static sites to promote a project or portfolio with GitHub Pages.
All your code in one place
GitHub is one of the largest code hosts in the world with over 52 million projects. Private, public, or open source, all repositories are equipped with tools to help you host, version, and release code.
Host all your code
Make changes confidently
Make changes to your code in precise commits so you can quickly search every commit message in your revision history to find a change.
Use the blame view to trace changes and discover how your file, and your code base, has evolved.
Package and release code
When you’re ready to share, you can package your changes from a recently closed milestone or finished project into a new release.
Draft and publish release notes, publish pre-release versions, attached files, and link directly to the latest download.
Flexible hosting plans
All your code in one place, wherever you need to host it. Get the same experience whether you’re hosting GitHub in the cloud, on your servers, or on AWS or Azure.Compare plans and features
Trusted by more than 100,000 organizations
Bring GitHub to work
A smarter way to work together. Plan, build, review, and ship software—securely on GitHub.com or your own servers.Learn more
Start a new project
GitHub is free to use for public and open source projects. Work together across unlimited private repositories with a paid plan.Sign up for GitHub