If you live in England, you’d know a git as an unpleasant or contemptible person. If someone asked you to check out GitHub, it’d be natural to think that’s where all the gits go to hangout – when they’re not on lockdown. But just as Canadians, Australians, and Americans all have their own vernacular, so do software developers. In their language, Git is version control software and GitHub is like an SaaS add-on that makes Git easier to use. It can get confusing, even some developers may not realize there’s a difference between the two.
And one has to wonder if there’s not a joke in here somewhere?
What is Git?
Git is a distributed version control system (VCS) created by Linus Torvalds in 2005. Linus also created Linux. We can pick up a little insight that he might be a little difficult to work with, by his own admission, “I’m an egotistical bastard, and I name all my projects after myself. First ‘Linux’, now ‘Git’.” We can say then, that a git created git.
Even so, it’s one of the most popular, or at least, widely used software version control systems. With it, you can view and manage your code’s history. Git is free to download and use by anyone. Its branching feature makes it easy to track the changes made by each user. Git can be installed on your own local system. Git enables you to
- Compare changes of your code over time.
- See the last user to modify a piece of code.
- Discover when issues or bugs were introduced.
- Easily revert code files back to a previous, unbroken state.
- Revert an entire project back to a working, stable version.
- Set up multiple developers to work on your code simultaneously.
Version control is important as a typical development team has 7-8 software developers all making daily changes to a codebase. So, just imagine how complicated it can be for a large company like Microsoft with over 4,000 engineers working on the same repository.
What is GitHub?
GitHub is a Git repository hosting service and manager. What can be said about GitHub also applies to other repository managers like GitLab and BitBucket. Mostly. GitHub has 40 million users. That might qualify as a punchline, suffice that GitHub was acquired by Microsoft in 2018 for $7.5 billion.
Git repository managers like GitHub make it exponentially easier to work with teams of developers. Most repository hosting services and managers are run for a profit using the Software as a Service (SaaS) monetization model. However, GitHub and others do have a free option for small teams working on open-source projects.
GitHub works like a cloud-based database for sharing, tracking, and managing software code.
The advantages of using GitHub or another manager include:
- A Graphical User Interface to make interacting with Git easier and more intuitive.
- Your code is accessible to anyone who is authorized access, wherever they may be.
- See how many issues are being worked on for bugs or new features.
- Track how much work is being done on different types of issues – useful for comparing with your Sprints.
- See the areas in which your developers and engineers specialize.
- An extensive library detailing Git’s capabilities.
- An active and helpful user community and support staff to help answer questions.
- Makes it easy to show your work to others – to crowdsourcing development or impress recruiters.
Comparing GitHub File Size Limits
While Git has no file size or repository size limit, most repository managers do have limits on free accounts. Exceeding their limits can bring development to a halt. Traditionally, developers have been advised to keep their Git repositories under 1 Gb and file sizes under 100 Mb.
There are many best practices and tools to help developers avoid the github repository size limit. But that’s not always possible, as Microsoft’s case shows – and for which they’ve created their own way of managing the world’s largest Git repository. These size limits generally don’t apply to teams with a premium account.
Comparison of Repository Manager Free Accounts
|Team Size||Max File Size||Max Repo Size||Cost of First Premium Tier*|
|GitHub||Any||100 Mb||2 Gb / 5 Gb hard cap||$4.00 per month per user|
|BitBucket||5 users||1 Gb||1 Gb / 2 Gb hard cap||$3.00 per month per user|
|GitLab||Any||Up to Repo Size||10 Gb||$4.00 per month per user|
Premium services vary by company.
Git is a free, downloadable version control system to help you track and manage your code’s history.
GitHub is a hosting service with a free limited option that makes it easy to manage your Git repositories when collaborating with teams.
It can be said that Git was created by a git and that GitHub is where a lot of people who use Git go. It would be utterly unsafe to make any further generalizations.