GitHub logo

GitHub

Powerful collaboration, review, and code management for open source and private development projects
244.4K
209.6K
+ 1
10.2K

What is GitHub?

GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
GitHub is a tool in the Code Collaboration & Version Control category of a tech stack.

Who uses GitHub?

Companies
10063 companies reportedly use GitHub in their tech stacks, including Airbnb, Shopify, and Netflix.

Developers
230023 developers on StackShare have stated that they use GitHub.

GitHub Integrations

Visual Studio Code, Slack, Postman, Jira, and Confluence are some of the popular tools that integrate with GitHub. Here's a list of all 606 tools that integrate with GitHub.
Pros of GitHub
1.8K
Open source friendly
1.5K
Easy source control
1.3K
Nice UI
1.1K
Great for team collaboration
864
Easy setup
503
Issue tracker
484
Great community
480
Remote team collaboration
450
Great way to share
441
Pull request and features planning
145
Just works
131
Integrated in many tools
119
Free Public Repos
114
Github Gists
110
Github pages
82
Easy to find repos
61
Open source
59
Easy to find projects
59
It's free
56
Network effect
48
Extensive API
42
Organizations
41
Branching
33
Developer Profiles
32
Git Powered Wikis
29
Great for collaboration
23
It's fun
22
Community SDK involvement
22
Clean interface and good integrations
19
Learn from others source code
15
Because: Git
14
It integrates directly with Azure
9
Standard in Open Source collab
9
Newsfeed
8
It integrates directly with Hipchat
7
Fast
7
Beautiful user experience
6
Cloud SCM
6
Easy to discover new code libraries
5
Smooth integration
5
It's awesome
5
Integrations
5
Graphs
5
Nice API
4
Quick Onboarding
4
Remarkable uptime
4
Hands down best online Git service available
4
CI Integration
4
Reliable
3
Loved by developers
3
Free HTML hosting
3
Security options
3
Simple but powerful
3
Uses GIT
3
Unlimited Public Repos at no cost
3
Version Control
3
Easy to use and collaborate with others
2
Nice to use
2
IAM
2
Ci
1
Easy and efficient maintainance of the projects
1
Good tools support
1
Beautiful
1
Free HTML hostings
1
Self Hosted
1
All in one development service
1
Easy to use
1
Easy source control and everything is backed up
1
Leads the copycats
1
Never dethroned
1
IAM integration
1
Issues tracker
1
Very Easy to Use
1
Easy deployment via SSH
1
Free private repos
0
Profound
Decisions about GitHub

Here are some stack decisions, common use cases and reviews by companies and developers who chose GitHub in their tech stack.

Russtopia Labs
Sr. Doodad Imagineer at Russtopia Labs | 5 upvotes 路 217.4K views
Shared insights
on
GogsGogsGitHubGitHubGolangGolangGitLabGitLab

I installed Gogs after a few repos I planned to use on GitHub disappeared without explanation, and after Microsoft's acquisition of same, it made me think about the over-centralization of community-developed software. A self-hosted solution that enables easy point-and-click mirroring of important repositories for my projects, both in-house and 3rd-party, ensures I won't be bitten by upstream catastrophes. (So far, Microsoft's stewardship has been fine, but always be prepared). It's also a very nice way to host one's own private repos before they're ready for prime-time on github.

Gogs is written in Go and is easy to install and configure, IMHO much more so than GitLab, though it's of course less feature-rich; the only major feature I wish Gogs had is an integrated code review tool, but the web plugin hypothes.is https://stackshare.io/hypothes-is/hypothes-is is quite suitable as a code review tool. Set up a group for each code review, and just highlight lines to add comments in pull request pages of Gogs.

See more

Vue.js vuex Vue Router Quasar Framework Electron Node.js npm Yarn Git GitHub Netlify My tech stack that helps me develop quickly and efficiently. Wouldn't want it any other way.

See more
Praveen Mooli
Engineering Manager at Taylor and Francis | 18 upvotes 路 2.7M views

We are in the process of building a modern content platform to deliver our content through various channels. We decided to go with Microservices architecture as we wanted scale. Microservice architecture style is an approach to developing an application as a suite of small independently deployable services built around specific business capabilities. You can gain modularity, extensive parallelism and cost-effective scaling by deploying services across many distributed servers. Microservices modularity facilitates independent updates/deployments, and helps to avoid single point of failure, which can help prevent large-scale outages. We also decided to use Event Driven Architecture pattern which is a popular distributed asynchronous architecture pattern used to produce highly scalable applications. The event-driven architecture is made up of highly decoupled, single-purpose event processing components that asynchronously receive and process events.

To build our #Backend capabilities we decided to use the following: 1. #Microservices - Java with Spring Boot , Node.js with ExpressJS and Python with Flask 2. #Eventsourcingframework - Amazon Kinesis , Amazon Kinesis Firehose , Amazon SNS , Amazon SQS, AWS Lambda 3. #Data - Amazon RDS , Amazon DynamoDB , Amazon S3 , MongoDB Atlas

To build #Webapps we decided to use Angular 2 with RxJS

#Devops - GitHub , Travis CI , Terraform , Docker , Serverless

See more

Context: I wanted to create an end to end IoT data pipeline simulation in Google Cloud IoT Core and other GCP services. I never touched Terraform meaningfully until working on this project, and it's one of the best explorations in my development career. The documentation and syntax is incredibly human-readable and friendly. I'm used to building infrastructure through the google apis via Python , but I'm so glad past Sung did not make that decision. I was tempted to use Google Cloud Deployment Manager, but the templates were a bit convoluted by first impression. I'm glad past Sung did not make this decision either.

Solution: Leveraging Google Cloud Build Google Cloud Run Google Cloud Bigtable Google BigQuery Google Cloud Storage Google Compute Engine along with some other fun tools, I can deploy over 40 GCP resources using Terraform!

Check Out My Architecture: CLICK ME

Check out the GitHub repo attached

See more
Shared insights
on
GitHubGitHubSlackSlack

We're using GitHub for version control as it's an industry standard for version control and our team has plenty of experience using it. We also found many features such as issues and project help us organize. We also really liked the fact that it has the Actions CI platform built in because it allows us to keep more of our development in one place. We chose Slack as our main communication platform because it allows us to organize our communication streams into various channels for specific topics. Additionally, we really liked the integrations as they allow us to keep a lot of our in formation in one place rather than spread around many different apps.

See more
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH | 29 upvotes 路 5.3M views

Our whole DevOps stack consists of the following tools:

  • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
  • Respectively Git as revision control system
  • SourceTree as Git GUI
  • Visual Studio Code as IDE
  • CircleCI for continuous integration (automatize development process)
  • Prettier / TSLint / ESLint as code linter
  • SonarQube as quality gate
  • Docker as container management (incl. Docker Compose for multi-container application management)
  • VirtualBox for operating system simulation tests
  • Kubernetes as cluster management for docker containers
  • Heroku for deploying in test environments
  • nginx as web server (preferably used as facade server in production environment)
  • SSLMate (using OpenSSL) for certificate management
  • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
  • PostgreSQL as preferred database system
  • Redis as preferred in-memory database/store (great for caching)

The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

  • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
  • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
  • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
  • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
  • Scalability: All-in-one framework for distributed systems.
  • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
See more

Blog Posts

Dec 8 2020 at 5:50PM

DigitalOcean

GitHubMySQLPostgreSQL+11
2
2178
GitHubOptimizelySegment+3
2
1105
Mar 18 2020 at 9:12AM

LaunchDarkly

GitHubLaunchDarkly+2
6
1039
JavaScriptGitHubReact+12
5
3928
GitHubDockerReact+17
35
34063

Jobs that mention GitHub as a desired skillset

See all jobs

GitHub's Features

  • Command instructions
  • Source browser
  • Git powered wikis
  • Integrated issue tracking
  • Code reviews with inline comments
  • Compare view
  • Newsfeed
  • Followers
  • Developer profiles
  • Autocompletion for @username mentions

GitHub Alternatives & Comparisons

What are some alternatives to GitHub?
GitLab
GitLab offers git repository management, code reviews, issue tracking, activity feeds and wikis. Enterprises install GitLab on-premise and connect it with LDAP and Active Directory servers for secure authentication and authorization. A single GitLab server can handle more than 25,000 users but it is also possible to create a high availability setup with multiple active servers.
Bitbucket
Bitbucket gives teams one place to plan projects, collaborate on code, test and deploy, all with free private Git repositories. Teams choose Bitbucket because it has a superior Jira integration, built-in CI/CD, & is free for up to 5 users.
AWS CodeCommit
CodeCommit eliminates the need to operate your own source control system or worry about scaling its infrastructure. You can use CodeCommit to securely store anything from source code to binaries, and it works seamlessly with your existing Git tools.
Git
Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
SVN (Subversion)
Subversion exists to be universally recognized and adopted as an open-source, centralized version control system characterized by its reliability as a safe haven for valuable data; the simplicity of its model and usage; and its ability to support the needs of a wide variety of users and projects, from individuals to large-scale enterprise operations.
See all alternatives

GitHub's Followers
209568 developers follow GitHub to keep up with related blogs and decisions.