Developer Tools 09 Aug 2026 4 min read

What Exactly is GitHub? (From Absolute Basics to Advanced Usage)

What Exactly is GitHub? (From Absolute Basics to Advanced Usage)
If you are stepping into web development, you've probably heard the word "GitHub" a million times. You might have even created an account. But what exactly is it? Let’s clear the confusion right now. Start by forgetting the complex jargon. We are going to build your understanding of GitHub from the absolute ground up. The Absolute Basics: What is GitHub? Imagine you are writing a massive book. Every day you add new chapters, delete old ones, and fix spelling mistakes. If your computer crashes, you lose everything. So, you use Google Drive to back it up. GitHub is like Google Drive, but specifically built for code. However, it doesn't just save your files; it saves the history of your files. It tracks exactly who changed what, when they changed it, and why. To use GitHub, you first use a tool on your computer called Git (the engine that tracks changes). GitHub is the website where you upload those tracked changes so they are safe in the cloud and accessible from anywhere. Going a Bit Deeper: The Core Concepts Once you understand what it is, you need to know the basic vocabulary every developer uses daily: - Repository (Repo): Think of this as your project’s master folder hosted on GitHub. If you are building a React website, all its files, images, and code live in one Repo. - Commit: This is like a "Save Point" in a video game. When you finish coding a new feature (like a navigation bar), you make a 'commit'. It takes a snapshot of your code exactly as it is right then. - Push & Pull: When you Push, you are uploading your local commits from your computer to GitHub. When you Pull, you are downloading the latest updates from GitHub back to your computer. The Professional Level: Collaboration Now, let's go deeper. What happens when multiple developers are working on the exact same project? If everyone edits the same file at the same time, it’s chaos. GitHub solves this elegantly. - Branches: Imagine the main code of your project is a tree trunk. If you want to build a new PHP login system, you don't build it on the trunk. You create a "Branch". You work on your branch independently. Even if your login system completely breaks, the main website (the trunk) remains perfectly safe and untouched. - Pull Requests (PR): Once your login system on the branch is working perfectly, you ask permission to merge it into the main trunk. This request is a 'Pull Request'. Other developers can review your code before accepting it. The Deep End: Automation & Hosting (Advanced) This is where GitHub transforms from a simple storage unit into a superpower. - GitHub Actions (CI/CD): Instead of manually uploading your files to a server every time you finish working, you can program GitHub to do it for you. You can set up a "GitHub Action" so that the moment you Push your Vite or React project, GitHub automatically builds it and deploys it live to a server like Vercel or InfinityFree. - GitHub Pages: You can host static HTML/CSS websites directly on GitHub for entirely free, turning your repository into a live website in seconds. The Verdict You don't need to learn everything on day one. Start by simply uploading your projects (Repos and Commits). Once you are comfortable, try making a Branch. Soon enough, you'll be automating your deployments like a seasoned pro. — Epun Manula (EDM Producer · Designer · Developer)

Tags

#github advance sinhala#version control sinhala#devops#software engineering sinhala#coding best practices