GitHub - A Solid and Enjoyable VCS
August 01, 2018

GitHub - A Solid and Enjoyable VCS

Garett Dunn | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User

Overall Satisfaction with GitHub

It's being used by a few departments within the organization. Different groups used it to varying degrees. Of course, it was used as a version control system, but other groups (like the one I was a part of) also used it for CI/CD purposes. I think this is where GitHub really starts to shine. It's definitely useful just as a Git repository, and we would gain a lot from that. But what brings it over the top is its integration with a lot of other tools we used, including Slack, Jenkins, and custom integrations utilizing webhooks. This allowed us to use GitHub as a central repository, not just for code, but also for knowledge, interactions, auditing, etc.
  • Makes collaboration over code incredibly simple. The UI is designed in such a way that anyone can pick it up very quickly. There are seemingly small features like being able to tag people in Issues, and the fluid process of doing PRs, that all come together to make it simple and enjoyable to use.
  • It is very robust and reliable. We used the self-hosted version and it was incredibly reliable, with very few issues over a long span of time.
  • It is very much the de facto standard for open source coding. This means that the friction for developers to both manage any open source parts of your code, as well as integrate open source code into your existing codebase, is very low.
  • GitHub has a lot of third-party integrations, but it isn't natively integrated with other project management tools, like something like JIRA and Bitbucket are.
  • It does its core work of code collaboration and review very well, but doesn't offer much in terms of other features. Gitlab, for example, has CI/CD tools built in. This item is a con for some and a pro for others.
  • GitHub allowed us to keep a central location for code and most other types of data (that don't belong in a database, that is).
  • It made bug tracking much more streamlined.
  • It allowed us to automate a lot of processes by tying them into GitHub and using it as a one-touch location to start different processes.
Gitlab has many more features (and many more for free). However, it is less mature and a little less stable than GitHub.

Bitbucket is very good for enterprises, as that its main focus. It also ties in well with the other Atlassian products (Jira, Bamboo, etc.). However, Bitbucket is less intuitive and not as suited for collaboration. Basic things like searching for and inside of repositories is cumbersome.

Stash is Bitbucket's red-headed stepchild. Avoid it, it's there as a legacy product.
GithHub is best suited for any size of a team of developers. It's also well-suited for other types of engineers like network and system engineers who are trying to "codify" their infrastructure better.

GitHub is really designed around Git. There are wrappers to make other systems (like Mercurial or SVN) compatible, but this is merely hiding it from the user, while still using git underneath