Sitemap

๐—š๐—ถ๐˜ & ๐—š๐—ถ๐˜๐—›๐˜‚๐—ฏ ๐—˜๐˜…๐—ฝ๐—น๐—ฎ๐—ถ๐—ป๐—ฒ๐—ฑ ๐—ง๐—ต๐—ฟ๐—ผ๐˜‚๐—ด๐—ต ๐—ฅ๐—ฒ๐—ฎ๐—น ๐——๐—ฒ๐˜ƒ๐—ข๐—ฝ๐˜€ ๐—ฃ๐—ฟ๐—ฎ๐—ฐ๐˜๐—ถ๐—ฐ๐—ฒ (๐—ก๐—ผ๐˜ ๐—ง๐—ต๐—ฒ๐—ผ๐—ฟ๐˜†)

4 min readJan 31, 2026

--

Press enter or click to view image in full size

Most people learn Git by memorizing commands.
DevOps engineers learn Git by shipping code, deploying infrastructure, collaborating safely, and maintaining clean history.

If youโ€™re learning DevOps, knowing Git commands is not enough. What really matters is how Git and GitHub are used in real engineering workflows, with clean commits, structured branching, deployments, and collaboration.

In Week 3 of the DevOps Micro Internship (DMI), I worked through a complete, hands-on Git & GitHub workflow that mirrors how DevOps teams operate in production. This post breaks down exactly what I did and the practical lessons I gained.

Understanding Git Identity: Local vs Global Configuration

I began by creating a local project called CodeTrack and initializing it as a Git repository. Instead of rushing into commits, I configured Git identity properly.

  • Set a local Git username and email for the repository
  • Configured global Git identity for other projects on my machine

What this taught me:
Git always prioritizes local configuration over global. This is why enterprises prefer repo-specific identity, it ensures accountability, auditability, and correct attribution in shared environments.

Press enter or click to view image in full size

Tracking, Staging, and Committing Like a Professional

I created two files:

  • index.html
  • style.css

Before committing anything, I added meaningful HTML and CSS content. I intentionally used git status to understand:

  • Untracked files
  • Staged changes
  • Clean working states

I then created:

  • A clean initial commit
  • A second commit for a small, controlled change

What this taught me:
Professional Git history is built from small, intentional commits, not bulk changes. This makes debugging, reviews, and rollbacks significantly easier.

Press enter or click to view image in full size

Deploying a Git-Tracked Project to EC2 with Nginx

To connect version control with infrastructure, I deployed CodeTrack as a static website on an EC2 instance using Nginx.

  • Pulled the Git-tracked project
  • Configured Nginx
  • Verified deployment via the EC2 public IP

What this taught me:
Git is not isolated from DevOps work, it directly supports deployment, monitoring, and production readiness.

Press enter or click to view image in full size

Branching Workflow: Feature Development Without Risk

Next, I implemented a feature-based branching workflow to add a contact page.

Get Stephcollectionโ€™s stories inย yourย inbox

Join Medium for free to get updates fromย thisย writer.

Steps:

  • Created a feature branch: feature/contact-page
  • Added contact.html and committed
  • Updated index.html with a link (separate commit)
  • Verified the mainbranch remained unchanged
  • Merged the feature branch cleanly
  • Inspected commit history using graph view
  • Deleted the feature branch after merge

What this taught me:
Branch isolation prevents unfinished features from leaking into production and enables safe parallel development, which is critical in real teams.

Press enter or click to view image in full size

Using GitHub as a DevOps Portfolio

Beyond pushing code, I treated GitHub like a professional DevOps platform, not just a storage space.

  • Explored commits, issues, pull requests, and repository insights
  • Updated my GitHub profile to reflect my DevOps journey
  • Focused on clarity, structure, and professionalism

What this taught me:
For DevOps engineers, GitHub is more than code hosting, itโ€™s a living portfolio that shows how you think, work, and collaborate.

Open-Source Contribution: Fork, Sync, and Pull Request

To simulate real-world collaboration, I practiced a complete open-source workflow:

  • Forked an upstream repository
  • Authenticated GitHub using SSH
  • Configured origin and upstream remotes
  • Created a feature branch
  • Made a focused change
  • Synced with upstream
  • Opened a clean pull request

What this taught me:
Fork โ†’ branch โ†’ commit โ†’ sync โ†’ PR is the foundation of both open-source and enterprise collaboration.

Press enter or click to view image in full size

Final Thoughts: Git & GitHub as DevOps Systems

This assignment shifted my mindset from โ€œusing Gitโ€ to thinking like a DevOps engineer.

Git and GitHub are not just tools, they enforce:

  • Discipline
  • Traceability
  • Accountability
  • Safe deployment practices

When used correctly, they connect code, infrastructure, and collaboration into a single workflow.

๐Ÿ‘‰ DevOps is not about knowing commands , itโ€™s about how you work.

P.S. This post is part of the DevOps Micro Internship (DMI) Cohort-2 by Pravin Mishra. You can start your DevOps journey by joining this Discord community ( https://discord.pravinmishra.com/ ).

--

--