In one of my recent assignments, I revisited some core Git and GitHub practices while working on my CodeTrack project. Many developers use Git and GitHub daily without fully understanding the principles behind them—but knowing how and why they work is essential for real-world software development.
Git is more than just a version control tool—it’s like a time machine for your code. Every change, every milestone, and every experiment is recorded, creating a clear history of your project. GitHub complements this by providing a central, collaborative hub where teams can review, discuss, and merge changes safely. Together, they make collaboration seamless and ensure your code is always backed up and organized.
What I Did in This Assignment
For this assignment, I revisited the CodeTrack project and took it a step further by deploying it to a live environment using an AWS EC2 instance. Here’s the workflow I followed:
Forked and cloned the repository to my local machine, created a feature branch, and made updates.
Launched an EC2 instance:
Ubuntu 24.04 LTS, t3.micro instance.
Set up the server environment:
sudo apt update && sudo apt upgrade -y
sudo apt install nginx -y
Transferred project files from my local computer to the remote server using scp (secure copy protocol).
Configured the server:
Set permissions, organized files, and placed index.html and style.css in /var/www/html/ for Nginx to serve.
Restarted Nginx and verified the live site using the public IP of the instance.
This process wasn’t just about running commands—it was about understanding why each step matters. Git ensured my code remained clean, trackable, and collaborative-ready, while GitHub acted as a single source of truth. The deployment step bridged the gap between development and a live environment, a critical skill for any aspiring DevOps engineer.
Lessons Learned
Pull Requests matter: I practiced creating pull requests, which mirrors how teams review, discuss, and safely merge code.
Version control builds accountability: Every change is recorded and auditable, making collaboration smoother.
Deployment connects the dots: Moving from local development to a live server highlighted the importance of infrastructure, file organization, and proper server configuration.
Whether you’re debugging, collaborating, or deploying, Git and GitHub form the foundation of modern software workflows. Mastering them transforms you from just writing code to building, managing, and delivering projects with confidence and precision.
GitHub fork link for this project: https://github.com/ccokeke0023/devops-micro-internship-interviews

Top comments (0)