🧩 Day 28 of #100DaysOfDevOps — Selective Commit Merging in Git “Excellence is not being the best; it is doing your best in every situation.” — John Wooden Today’s challenge revolved around a real-world Git scenario — merging a specific commit from one branch to another without affecting the rest of the work in progress. Here’s the situation: The Nautilus application development team had a repository located at: 📍 /opt/cluster.git (cloned under /usr/src/kodekloudrepos on the Storage Server in Stratos DC). The repository contained two branches: master (main production branch) feature (active development branch) One developer had made several updates in the feature branch, but only one specific commit — identified by the message “Update info.txt” — was ready to be merged into production. As part of the DevOps team, I: Switched to the master branch to prepare for integration. Identified the target commit on the feature branch using git log. Used a cherry-pick merge to pull only that single commit into master. Verified the merge integrity and ensured no conflicts. Finally, pushed the changes back to the remote repository for deployment readiness. This task perfectly illustrated how precision control in Git can streamline workflows — merging only what’s needed, when it’s needed. In fast-paced DevOps environments, such selective merging avoids instability while keeping production agile and safe. #100DaysOfDevOps #Day28 #Git #GitCherryPick #VersionControl #DevOpsJourney #ContinuousIntegration #SoftwareEngineering #GitOps #TeamCollaboration #TechCommunity #EngineeringExcellence #InfrastructureAutomation #DevOpsCulture #CodeManagement #OpenSource #LearningEveryday #ProblemSolving #CommandLine #CloudComputing #ProfessionalGrowth #AutomationEngineer
Selective Commit Merging in Git: A DevOps Challenge
More Relevant Posts
-
🔄 Day 27 of #100DaysOfDevOps — Reverting Commits in Git “Failure is simply the opportunity to begin again, this time more intelligently.” – Henry Ford Today’s task was all about damage control in Git — something every DevOps engineer eventually faces. Here’s the scenario: The Nautilus application development team encountered an issue with the latest changes pushed to the repository located at: 📍 /usr/src/kodekloudrepos/demo on the Storage server in Stratos DC. The development team needed the repository rolled back to the previous stable commit. As part of the DevOps team, it was my job to: Identify the latest commit (HEAD) that introduced issues. Revert the repository to the previous commit, which contained the initial stable codebase. Create a new revert commit with the message revert demo message to document the rollback cleanly. This exercise reinforced why version control isn’t just about committing code, but also about managing mistakes gracefully. A well-structured revert ensures that the project history stays intact while swiftly neutralizing any bad changes. In real-world CI/CD pipelines, knowing how to revert without disrupting collaborators is a critical operational skill. It maintains velocity while preserving integrity. #100DaysOfDevOps #Day27 #Git #VersionControl #GitRevert #DevOpsJourney #ContinuousLearning #TechCommunity #SoftwareEngineering #InfrastructureManagement #GitOps #CodingJourney #ProfessionalGrowth #EngineeringExcellence #CommandLine #DevOpsCulture #ErrorRecovery #Teamwork #OpenSource #CloudComputing #TechGrowth
To view or add a comment, sign in
-
-
What Is a Branching Strategy in Git? (2025 Guide) 💡 Ever pushed directly to main and instantly regretted it? 😅 It’s time to get serious about Git Branching Strategies the backbone of modern DevOps, CI/CD, and code collaboration. In this new 2025 guide, we break down how branching defines your entire workflow from hotfixes to release pipelines. 🔹 Learn about: Git Flow vs. GitHub Flow vs. Trunk-Based Development When to merge, when to rebase, and when to hold off Feature branching & environment-based branching Best practices for enterprise CI/CD alignment Tools to automate merge approvals & pull requests 🧠 A strong branching strategy isn’t just for version control . it’s about speed, stability, and scalability in your delivery lifecycle. 📘 Read the complete guide: https://lnkd.in/dCHhU_mP #Git #BranchingStrategy #DevOps #VersionControl #GitHub #GitLab #CloudComputing #SoftwareEngineering #CodeManagement #ContinuousIntegration #ContinuousDelivery #DeveloperTools #CodeReview #CICD #Automation #OpenSource #TechCommunity #PlatformEngineering #Programming #SoftwareDevelopment #AgileDevelopment #SRE #CodingBestPractices #InfrastructureAsCode #CloudEngineering #LinuxCloud #TechInnovation #EngineeringCulture #BuildAutomation #DeveloperProductivity
To view or add a comment, sign in
-
-
Day 28 of #100DaysOfDevOps — Understanding Git Cherry-Pick In collaborative projects, not every branch is ready for merging. Sometimes, you only need one specific change from another branch — that’s where git cherry-pick shines. What is Git Cherry-Pick? git cherry-pick allows you to apply a specific commit from one branch onto another without merging all the commits. This is especially helpful when: You want to move a hotfix or bug patch to the main branch. You only need a specific update from an experimental branch. You want to control exactly what goes into production. Basic Syntax: git checkout <target-branch> git log <source-branch> git cherry-pick <commit-hash> git push origin <target-branch> Example: git checkout master git log feature git cherry-pick abc1234 git push origin master As a DevOps engineer, understanding Git’s branching and commit management tools is essential for maintaining clean, stable, and traceable code releases. Cherry-picking ensures precision — you can promote tested fixes to production without merging incomplete features. I found this Medium post by Amir Mustafa helpful: https://lnkd.in/dNzH3n8W #Git #DevOps #100DaysOfDevOps #KodeKloud #VersionControl
To view or add a comment, sign in
-
-
Unleashing the Power of GitLab! In today’s fast-paced DevOps world, GitLab has become more than just a Git repository — it’s a complete DevOps platform that brings your entire software lifecycle together in one place! From code management to CI/CD automation, security scanning, and monitoring, GitLab helps teams move faster, collaborate smarter, and deliver better products — all without switching between tools. What makes GitLab truly powerful? All-in-one platform – Code, CI/CD, and DevSecOps in one place. Continuous Integration & Continuous Deployment – Automate builds, tests, and releases with ease. Built-in Security – Catch vulnerabilities early. Collaboration Made Simple – Merge requests, reviews, and pipelines, all in sync. As someone who’s learning DevOps, I’m realizing how GitLab empowers developers and operations teams to work as one — saving time, improving quality, and boosting productivity! If you haven’t explored GitLab yet, it’s the perfect time to dive in Whether you’re managing projects, automating builds, or deploying applications — GitLab has it all. #GitLab #DevOps #CICD #Automation #DeveloperTools #AsimUllah #TechJourney
To view or add a comment, sign in
-
🚀 Leveling Up My DevOps Journey! Recently, I explored GitLab — an incredible all-in-one DevOps platform — and applied it in a real-world project. 🔧 What I learned: • Repository management & branching workflows • Setting up CI/CD pipelines for automation • Integrating build → test → deploy stages • Managing merge requests & approvals efficiently 💡 Project highlight: I built a small pipeline that automatically runs tests and deploys the app to a sample environment — saving time and improving consistency! 🧠 Key takeaway: GitLab makes DevOps seamless by bringing together version control, CI/CD, and monitoring in one platform. It’s powerful for both individual developers and teams. 🎯 Next goal: Integrating Docker with GitLab CI to automate container deployments. 💬 Have you tried GitLab for CI/CD? What’s your favorite feature? #GitLab #DevOps #CICD #ContinuousIntegration #ContinuousDeployment #LearningInPublic #Automation #CloudComputing #CareerGrowth #TechJourney
To view or add a comment, sign in
-
-
🚀 𝟏𝟎𝟎 𝐃𝐚𝐲𝐬 𝐨𝐟 𝐃𝐞𝐯𝐎ps – 𝐌𝐲 𝐉𝐨𝐮𝐫𝐧𝐞𝐲 (𝐃𝐚𝐲 𝟐𝟑) 🚀 Day 23 of my 100 Days of DevOps challenge on KodeKloud is complete! Today's task shifted from the command line to the web UI to perform a core collaborative action: forking a Git repository. This is a fundamental step in the fork-and-pull-request workflow, which is central to modern development. 🔹 Today's Challenge: Fork a Git Repository Goal: As a new developer ('jon'), log in to the Gitea UI, locate a team repository, and create a personal fork to begin work without affecting the main codebase. • Log in to the Gitea server as user jon. • Find the existing repository named sarah/story-blog. • Fork this repository under the jon user account. 🧭 My Approach • Navigated to the Gitea UI and signed in with the jon user credentials. • Used the search bar to locate the sarah/story-blog repository. • Clicked the "Fork" button on the repository's main page. • Selected jon as the owner for the new forked repository. • Verified that I was redirected to jon/story-blog, confirming the fork was successful. ⚙️ Challenges Faced • This was a UI-driven task, so the main check was ensuring I was logged in as the correct user (jon) before initiating the fork. 🧩 Resolutions • The Gitea UI clearly prompts for which user/organization to fork to, making it easy to confirm the correct destination (jon). 💡 Key Takeaways • Forking vs. Cloning: A clone copies the repo, but a fork creates a new, separate server-side copy linked to the original (upstream). • Safe Development: Forking is the essential first step for contributing to a project you don't have direct push access to. You push changes to your fork, then open a Pull Request. • Foundation of Collaboration: This fork-and-PR model is the standard for open-source projects and many internal teams, as it protects the main branch and enables code review. This task was a great practical demonstration of the standard developer workflow in a shared code environment. On to Day 24! 💪 #100DaysOfDevOps #KodeKloud #DevOps #Git #Gitea #VersionControl #Collaboration #LearningJourney #KeepLearning #CI CD
To view or add a comment, sign in
-
-
𝐃𝐀𝐘 𝟎𝟒 — 𝐆𝐞𝐭𝐭𝐢𝐧𝐠 𝐒𝐭𝐚𝐫𝐭𝐞𝐝 𝐰𝐢𝐭𝐡 𝐆𝐢𝐭 𝐒𝐞𝐭𝐮𝐩 𝐚𝐧𝐝 𝐂𝐨𝐫𝐞 𝐂𝐨𝐦𝐦𝐚𝐧𝐝𝐬 Yesterday, I introduced Git and why it’s a crucial part of DevOps workflows. Today, let’s talk about how to set it up and understand the key components that make it work. 𝐒𝐞𝐭𝐭𝐢𝐧𝐠 𝐔𝐩 𝐆𝐢𝐭 After installing Git, the first thing to do is set your global identity , this helps Git know who’s making each change. 𝐠𝐢𝐭 𝐜𝐨𝐧𝐟𝐢𝐠 --𝐠𝐥𝐨𝐛𝐚𝐥 𝐮𝐬𝐞𝐫.𝐧𝐚𝐦𝐞 "𝐘𝐨𝐮𝐫 𝐍𝐚𝐦𝐞" example: git config --global user.email "you@example.com" 𝐘𝐨𝐮 𝐜𝐚𝐧 𝐜𝐨𝐧𝐟𝐢𝐫𝐦 𝐲𝐨𝐮𝐫 𝐜𝐨𝐧𝐟𝐢𝐠𝐮𝐫𝐚𝐭𝐢𝐨𝐧 𝐰𝐢𝐭𝐡: 𝐠𝐢𝐭 𝐜𝐨𝐧𝐟𝐢𝐠 --𝐥𝐢𝐬𝐭 Important Sections of Git 𝐑𝐞𝐩𝐨𝐬𝐢𝐭𝐨𝐫𝐲 (𝐑𝐞𝐩𝐨) – This is where your project lives. You can create one locally using: 𝐠𝐢𝐭 𝐢𝐧𝐢𝐭 𝐖𝐨𝐫𝐤𝐢𝐧𝐠 𝐃𝐢𝐫𝐞𝐜𝐭𝐨𝐫𝐲 – The actual files you’re editing. Staging Area (Index) – Where changes are reviewed before committing. Add files to staging with: 𝐠𝐢𝐭 𝐚𝐝𝐝 [𝐟𝐢𝐥𝐞] 𝐂𝐨𝐦𝐦𝐢𝐭 – A snapshot of your staged changes. 𝐠𝐢𝐭 𝐜𝐨𝐦𝐦𝐢𝐭 -𝐦 "𝐜𝐨𝐦𝐦𝐢𝐭 𝐦𝐞𝐬𝐬𝐚𝐠𝐞" 𝐑𝐞𝐦𝐨𝐭𝐞 𝐑𝐞𝐩𝐨𝐬𝐢𝐭𝐨𝐫𝐲 – The shared version stored online (e.g., GitHub). 𝐠𝐢𝐭 𝐫𝐞𝐦𝐨𝐭𝐞 𝐚𝐝𝐝 𝐨𝐫𝐢𝐠𝐢𝐧 [𝐫𝐞𝐩𝐨-𝐮𝐫𝐥] 𝐠𝐢𝐭 𝐩𝐮𝐬𝐡 𝐨𝐫𝐢𝐠𝐢𝐧 𝐦𝐚𝐢𝐧 Understanding these parts will help you move from basic version control to efficient collaboration — which is the heartbeat of DevOps. #DevOps #Git #VersionControl #LearningJourney #Day6 #TechTools
To view or add a comment, sign in
-
Day 26 of My DevOps Journey After learning the basics of Git yesterday, today I explored one of its most powerful features - Branching and Merging 🧩 What is a Branch? A branch in Git allows you to work on new features, fixes, or experiments without affecting the main codebase. Think of it like creating a parallel world to code freely you can merge it back later when ready. Common Branching Commands git branch feature-login # Create a new branch git checkout feature-login # Switch to that branch git branch # List all branches git merge feature-login # Merge branch into main git branch -d feature-login # Delete a branch after merging Why Branching Matters in DevOps ✅ Enables multiple developers to work simultaneously ✅ Keeps production (main) stable ✅ Simplifies testing and review ✅ Encourages better workflow and version control Tip: Use meaningful branch names like feature/add-login, bugfix/api-timeout, or release/v2.0 — it helps maintain clarity across teams! How do you manage your Git workflow Git Flow, GitHub Flow, or something custom? Share your approach below 👇 #Day26 #DevOpsJourney #Git #Branching #Merging #GitFlow #GitHubFlow #VersionControl #DevOps #LearningInPublic #Automation #Collaboration #CloudComputing #InfrastructureAsCode
To view or add a comment, sign in
-
# DevOps: Day 13 - Git branching strategy Branching strategy is where you have various branches such as: - Master Branch: kept for active development. - Feature Branch: used to introduce new breaking changes. - Release Branch: the branch where our application is built from. Runs end to end functionality test from this branch. So This branch is used to test before releasing to the customer whenever a feature is ready to be released. So here the development work is done, hence it is separated from the master because there will still be active developments going on in the master branch. Which we don't want in the release branch. Release always happens from the release branch. Note: There can also be Bugfix/Hotfix in Git Branching Strategy, just that those are usually short-lived. #DevOps #Tech #git #github #gitbranch #master #feature #release
To view or add a comment, sign in
-
Explore related topics
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development