Initially we have started GitHub to manage our Code versioning and code reviews but later with time now we are using GitHub to manage our Infrastructure code as well, and it's used for all CI/CD processes in our organisation. It is integrated with other SaaS platforms like SonarCloud, Terraform Cloud, etc and for our Code Quality Check and for Infra Auto provisioning. Other than that we are also using GitHub for for project management and Issue tracking as well. We have recently started using it for our Artifact management as well. At present this tool is helping us out to manage alomost core DevOps activites at single platform.
Pros
Version Control
GitHub Actions for CI/CD workflows
Code Reviews
Third Party Integration
Issue Management
Cons
Project Management with tools can be improved further
Capability to Manage Infrastructure details
Release Managed can be improved further with dedicated tab at Organisation level with reference to pacjages
Likelihood to Recommend
GitHub is an easy to go tool when it comes to Version Controlling, CI/CD workflows, Integration with third party softwares. It's effective for any level of CI/CD implementation you would like to. Also the the cost of product is also very competitive and affordable. As of now GitHub lacks capabilities when it comes to detailed project management in comparison to tools like Jira, but overall its value for money.
VU
Verified User
Director in Engineering (Computer Software company, 11-50 employees)
We use GitHub for our code repository, CI/CD and Issue tracking. We have about 50 devs on the system who uses the platform including myself.
Pros
Code Repository
Issue Tracking in PRs
Cons
In my opinion, support is horrible - well it doesn't exist so
Issue tracking needs some revamp for searching and text editor
In my opinion, they must stop acting like God and delete users and their history!
Likelihood to Recommend
Several major problems that are forcing us to look at alternatives and move away but the most critical one is that they deleted a user of our account and all the issues that the user created! In my experience, all gone with no explanation. You disable/delete a user, okay fine, but why in the world delete the issues they created that need to be tracked and fixed?
Then, where the heck is your support team? In my experience, it's been over a week and created a ticket but they haven't even acknowledged it. I have replied 4 times to that ticket but they have failed to even say, got it, let us figure out where, in my opinion, GitHub screwed up!
GitHub Team is a key technology that enabled our product engineering teams to version, build, verify, validate, and deploy software enhancements to support our customers. The GitHub Team edition enables each team to take advantage of key capabilities that drive standardization across our software products while still enabling freedom to explore additional capabilities to support their respective CI/CD processes.
Pros
Integrated peer reviews allow engineers to collaborate efficiently and ensure the conversation is preserved for historical purposes.
The rollout of GitHub actions has enabled our teams to reduce dependencies on external CI/CD services and increase engineering by having less systems to utilize/manage.
Cons
When it comes to Compliance and Security, the GitHub Team editions should provide the ability for SSO or the ability to limit invites to approved business domains.
Likelihood to Recommend
GitHub is well suited for companies of all sizes to build their software products. Although there are various tiered levels you can purchase, most companies will find that the GitHub Team version meets or exceeds all their needs. Companies that have specific requirements around compliance will need to upgrade to the enterprise version, which may be an expensive investment for minimal value.
VU
Verified User
Executive in Engineering (Information Services company, 51-200 employees)
GitHub helps my organization to host Source code repository without hassle. Dependa Bots and Integrations with third-party apps are great, A lot of options are available.GitHub package repository and Container Registry is also very useful. No doubt GitHub is an awesome source code management, also it offers to host repositories for free which is a great support to the open-source community and contributors.
Pros
GitHub helps my organization to host Source code repository without hassle.
Dependa Bots and Integrations with third-party apps are great, A lot of options are available.
GitHub package repository and Container Registry is also very useful.
Cons
Lack of rich CI/CD which is better by all means in GitLab.
GitHub should focus on CI/CD they are very good at source code repository hosting.
Dosen't provide [a] self managed offering. We can't download, install, and setup our own GitHub server if we want to use GitHub we can use Github.com only.
Likelihood to Recommend
No doubt GitHub is the best source code management tool and all other source control tools are influenced by Github only. Also, it offers to host source code repositories for free which is great support for all the open-source communities and contributors. If you're fine with hosting your repositories on a SaaS based source control platform it's good to GO! But in case you want to set up your own source control server and host source code repositories then GitHub is not for you.
Git is very good for agile planning and maintaining the code according to different versions. In our project we work on three release cycle in parallel so to have different branches and merging the code is a big task which GitHub has resolved. It makes EPIC planning more easy when there is less dependency on branches.
Pros
GitHub is easy to use and handle i.e. not much training you need to be if implemented in project.
Also merging capability and solving merge conflicts is easy in GitHub.
Cons
GitHub is a costly tool so not every organization can afford the license of it.
GitHub has security issues because it upload data on cloud which is venerable to attack.
Likelihood to Recommend
It could easily be considered as Master of version control tools. It is very easy to integrate with third parties. It provides visibility in scrum planning. it is very much capable of giving the devops pipeline view and understands the overall product need. the only drawback is the pricing for the license which might not be affordable if you are a small startup. The open source platform makes it vulnerable for the hackers to get into
VU
Verified User
Engineer in Information Technology (Telecommunications company, 10,001+ employees)
We are currently using GitHub as a code hosting platform and a collaboration tool to get others involved in the work we do. For us it solves the problem of getting open source contributors to collaborate with us and using the GitHub actions we can easily deploy to different instances of our hosting platforms.
Pros
GitHub actions easily help manage pipelines of the application and with these, you can do code health checks and deploy to any platform.
Proper clean and simple project management via issues and boards.
Analytics of one's contribution over a period of time.
It has lots of widely popular open source projects.
Cons
The project management could be a bit more robust by proving epics.
Would be better to be able to merge organization and personal account contribution over the year.
Actions marketplace could be better by automatically installing them in the specified repo.
Likelihood to Recommend
If you want to put up an opensource repository, GitHub is a great place to do so, You can also learn from different open-source projects that are. As a business you can have multiple private repos for free and you can benefit from GitHub actions and be able to manage your project via issues, milestones, and pull requests.
GitHub is used by many teams in our IT department and it solves our repository needs and collaboration across teams.
Pros
Version control system GUI is great
Open-source support
Pull request reviews are easy
Conflict resolution interface is helpful
Cons
UI could be a bit easier to use, especially the tabs on the pull request page
Likelihood to Recommend
If you would like to publish an open-source project or you are working on a team where you work on the same projects or you want to control the version of the app, GitHub is a great option. It is also good if you are just working on/trying new technologies you like.
VU
Verified User
Engineer in Information Technology (Computer Software company, 501-1000 employees)
We're using GitHub for our entire software workflow cycle including code versioning, code review and approval, team collaboration on the code, and release management. Now, with actions, we're also building our Docker images and deploying them live, so it's a full CI/CD pipeline for us, all in a single package that's used by the entire development team.
Pros
Simple and intuitive.
Broad set of features.
Cons
Conflict management could be improved.
Searching is good but not great.
Likelihood to Recommend
It's very well fitted for every software lifecycle use case. It's very easy to set up new repositories, both public and private, and to grant your teammates access to them. History tracking is also amazingly well implemented. What I like the most is that GitHub is always adding great new features. If you need it just for storing your binaries than it's not a great fit.
In my organization, GitHub is used by the development team, so everyone can keep track of the version control for the code we produce on a daily basis in projects.
Pros
It's easy to use and has a very intuitive platform on the web.
There's a whole bunch of tutorials online about how to use GitHub via the command line.
Anyone who codes can create a free account on GitHub and start contributing with code.
Cons
We can only have one private repository with a free account.
Likelihood to Recommend
GitHub is appropriate when you work on small to medium size projects, but for something bigger, you should consider BitBucket.
VU
Verified User
Consultant in Engineering (Computer Software company, 201-500 employees)
It's used for managing source code primarily, and we use it to collaborate as a team across our various software projects. On a daily basis, our organization will use it for git source control. It's also used sporadically as a wiki, along with as an issue manager when needed. Though for most issue management, JIRA is used instead.
Pros
Git sources control.
Issue management.
Wiki for a project.
Release management.
Finding open-source code.
Cons
Not open-source itself.
It only offers Git control.
Poor search feature at times for popular languages.
Likelihood to Recommend
When it comes to source control, GitHub is an exceptional service and you can't go wrong selecting it for a project. As a personal preference, I prefer GitLab, but GitHub is great. If you need to manage the source and want to keep a basic issue tracker along with the project, it's very well suited.
VU
Verified User
Team Lead in Professional Services (Computer Software company, 10,001+ employees)