📝 Day 6 Sharing my DevOps Series..... *git config is used to set and manage Git settings like your username, email, editor, and more. git config --global user.name "Your Name" git config --global user.email "your@email.com" *View commit history git log git log --oneline *Git Branch git branch git branch feature git checkout feature Branch = separate workspace *Git Merge - Combine changes git merge feature Merges feature branch into main Watch for conflicts *Git Clone Copy a repository git clone <repo-url> Downloads project to your system *Git Pull vs Fetch git fetch git pull Fetch = download changes Pull = fetch + merge *Git Push Upload your code git push origin main Sends commits to remote repo *Git Tag Mark important versions git tag v1.0 git push origin v1.0 Useful for releases *Git Stash Save work temporarily git stash git stash pop Useful when switching tasks *Git Rebase vs Merge Two ways to integrate code Merge → keeps history Rebase → cleaner history git rebase main *Git Fork (GitHub Workflow) Post: Contribute to open source Fork → copy repo Clone → local copy Push → your repo PR → contribute git cherry-pick git cherry-pick is used to pick a specific commit from one branch and apply it to another branch. git cherry-pick <commit-id> #GitHub #OpenSource #DevOps #git #cloud #repository.....
Git Config and Management Commands
More Relevant Posts
-
📝 Day 5 of Sharing my DevOps Series... *Git Basics What is Git? Git is a distributed version control system used to: Track code changes Collaborate with teams Manage project history *Why Git is Used? Track code changes Maintain version history Work with multiple developers Rollback to previous versions Work in parallel using branches *Git Architecture Working Directory Where you create/edit/delete files Staging Area Middle layer between working directory & Local repository Stores changes before commit Git Repository Stores all versions, history & metadata Initialize repository git init Check status git status Add file to staging git add file.txt Commit changes git commit -m "First commit" *File States in Git Untracked → New file (not added) Modified → Changed but not staged Staged → Ready to commit *Commands ls # List files ls -a # Show hidden files mkdir folder # Create directory cd folder # Change directory *Git Commit Options git commit -m "message" # Normal commit git commit -am "message" # Add + commit (tracked files only) *What is a Branch? A branch in Git is used to work on features independently without affecting the main code. *List Branches git branch - Shows all available branches Create a New Branch - git branch dev Creates a new branch named dev *Switch Branch git checkout dev git switch dev Move from one branch to another Create + Switch (Shortcut) git checkout -b feature Delete Branch git branch -d dev Deletes branch (safe delete) git branch -D dev Rename Branch git branch -m old-name new-name Rename a branch View All Branches (Local + Remote) git branch -a *Git Logs git log # Full history git log --oneline # Short history *Remote Repository (GitHub) git remote add origin <repo_url> git push origin master- Push local commits to remote repository *main information about git: git init → Initialize repo git add → Stage changes git commit → Save changes git status → Check status git branch → Manage branches git merge → Combine branches git push → Upload to remote git clone → Copy repo #DevOps #CareerGrowth #Cloud #AWS #Infrastructure #CloudComputing #AWS #TechLearning #DevOps #LearningInPublic #TechJourney #git #github
To view or add a comment, sign in
-
-
Git in Real Life: When I started using Git, I thought it’s just for pushing code. But in real production environments, Git becomes the single source of truth. Let me share a real-world scenario Scenario: Production Issue One day, a critical service started failing after deployment. Everything looked fine in CI/CD, but users were facing errors. First step? Not logs… Git history. Using: git log --oneline We traced a recent commit where a config file was modified. Use Case: Root Cause Analysis We compared changes using: git diff <commit-id> Found that: - Environment variable was changed - API endpoint misconfigured A small change, but huge impact. Fix Strategy Instead of manually fixing, we rolled back safely: git revert <commit-id> git push origin main Production stabilized within minutes Daily Use Cases of Git in DevOps - Managing infrastructure code (Terraform, Kubernetes YAMLs) - Version controlling CI/CD pipelines - Tracking configuration changes - Enabling team collaboration - Supporting GitOps workflows Must-Know Commands (Real Usage) git clone <repo> git checkout -b feature-branch git add . git commit -m "feature update" git push origin feature-branch git pull origin main git merge main Troubleshooting Scenarios 1. Merge Conflict git pull origin main Fix conflicts manually → then: git add . git commit -m "resolved conflict" 2. Wrong Commit Made git reset --soft HEAD~1 3. Lost Changes git stash git stash apply 4. Check Who Changed What git blame <file> Key Learning Git is not just a tool. It’s your safety net, audit system, and collaboration engine. In production, debugging often starts from Git, not from code. Final Thought A single commit can: - Break production - Or save hours of debugging So always: Commit smart. Review carefully. Deploy confidently. #Git #DevOps #Troubleshooting #VersionControl #Cloud #Git Lab #MLOPS #devsecops
To view or add a comment, sign in
-
-
Git Series | Day 8: Mastering Git Rebase — The Professional Standard for Clean History 🛠️✨ Integration is easy; maintaining a clean, readable history is hard. Today I moved beyond the standard 3-way merge to master Git Rebase, the tool that allows DevOps teams to keep their project timelines linear and manageable. 1. The Problem: The "Mixed" History of 3-Way Merges While a 3-way merge works, it has two major drawbacks in large-scale projects: Extra Commits: Every merge creates a "Merge Commit" which doesn't contain actual code changes, just integration data. Non-Linearity: The commit history becomes a "tangled web" of branches crossing over each other, making it difficult to audit or debug specific features. 2. The Solution: What is Rebase? Rebase is the process of moving or combining a sequence of commits to a new base commit. Instead of "merging" the branches, I am effectively rewriting the history so it looks like the feature branch was started from the most recent commit on the master branch. The Result: A perfectly linear history with no extra merge commits. The Command: While on the feature branch, run < git rebase master > 3. The Rebase Conflict Workflow Conflicts in rebase happen commit-by-commit, giving you granular control. My standardized resolution process is now: Identify: Find the file causing the conflict. Resolve: Edit the file, remove the headers/conflict markers. Stage: git add <file>. Safety Valve: If things go wrong, git rebase --abort brings me back to the pre-rebase state. #Git #DevOps #GitRebase #CleanCode #VersionControl #SoftwareArchitecture #100DaysOfCode #GitWorkflow #EngineeringExcellence
To view or add a comment, sign in
-
𝗚𝗶𝘁 𝗕𝗿𝗮𝗻𝗰𝗵𝗶𝗻𝗴 𝗦𝘁𝗿𝗮𝘁𝗲𝗴𝗶𝗲𝘀 𝘀𝗼𝗺𝗲𝘁𝗵𝗶𝗻𝗴 𝗜 𝘂𝗻𝗱𝗲𝗿𝘀𝘁𝗼𝗼𝗱 𝗼𝗻𝗹𝘆 𝗿𝗲𝗰𝗲𝗻𝘁𝗹𝘆 When I started using Git, I honestly thought branching simply means "create branch, push code, done." That's it. Job over. But while working on actual projects, one thing hit me hard. The wrong branching strategy does not just cause small hiccups. It creates confusion that keeps piling up and becomes very difficult to manage later. So let me share what I understood, in simple words. 𝗠𝗮𝗶𝗻 𝗼𝗿 𝗧𝗿𝘂𝗻𝗸-𝗕𝗮𝘀𝗲𝗱 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗺𝗲𝗻𝘁: Everyone commits directly to one main branch with small, frequent updates. Simple to follow, but it needs a lot of discipline from every single person on the team. 𝗙𝗲𝗮𝘁𝘂𝗿𝗲 𝗕𝗿𝗮𝗻𝗰𝗵𝗶𝗻𝗴: Every feature gets its own separate branch. Once the work is done, it gets merged back to main. Very easy to manage and track, and honestly the most commonly used approach in most teams I have seen. 𝗚𝗶𝘁 𝗙𝗹𝗼𝘄: This one has dedicated branches for everything, main, develop, feature, release, hotfix. Slightly more process-heavy but very useful once your project or team starts growing. 𝗥𝗲𝗹𝗲𝗮𝘀𝗲 𝗕𝗿𝗮𝗻𝗰𝗵𝗶𝗻𝗴: A separate branch is created for each release and all bug fixes are handled there before anything goes live. Very helpful when you want stable and controlled deployments. One thing I genuinely realised after all this is that there is no perfect branching strategy that works for everyone. It completely depends on your team size, your project, and how frequently you are shipping things. Personally, feature branching felt like the most natural starting point for me and I still use it quite often. #DevOps #Git #GitHub #CICD #VersionControl #CloudComputing #Docker #Kubernetes #AWS #Automation #LearningDevOps #DevOpsTips
To view or add a comment, sign in
-
-
🗓️ Day 29/100 — 100 Days of AWS & DevOps Challenge Today's task wasn't just Git — it was the full engineering team workflow that makes collaborative development actually safe. The requirement: Don't let anyone push directly to master. All changes must go through a Pull Request, get reviewed, and be approved before merging. This is branch protection in practice. Here's the full cycle: Step 1 — Developer pushes to a feature branch (already done) $ git log --format="%h | %an | %s" # Confirms user commit, author info, commit message Step 2 — Create the PR (Log into GIT) - Source: story/fox-and-grapes - Target: master - Title: Added fox-and-grapes story - Assign a user as reviewer Step 3 — Review and merge (log into GIT as reviewer) - Files Changed tab — read the actual diff - Approve the PR - Merge into master Master now has user story. And there's a full audit trail of who proposed it, who reviewed it, who approved it, and when it merged. Why this matters beyond the task: - A Pull Request is not a Git feature - it's a platform feature. Git only knows commits and branches. The PR is a Git/GitHub/GitLab construct that adds review, discussion, approval tracking, and CI/CD status checks on top of a branch merge. When companies say "we require code review before anything goes to production," this is the mechanism. When GitHub Actions or GitLab CI runs tests on every PR — this is where that hooks in. When a security audit asks "who approved this change?" — the PR has the answer. The workflow is identical across Git, GitHub, GitLab, and Bitbucket: push branch → open PR → assign reviewer → review diff→ approve → merge → master updated → branch deleted Full PR workflow breakdown on GitHub 👇 https://lnkd.in/gpi8_kAF #DevOps #Git #PullRequest #CodeReview #Gitea #BranchProtection #100DaysOfDevOps #KodeKloud #LearningInPublic #CloudEngineering #GitOps #TeamCollaboration
To view or add a comment, sign in
-
🚀 DevOps Journey – Day 19 / 100 Today I learned Git Tags, Fork, Merge Conflicts & Bitbucket 🔥 ⸻ 🔹 🏷️ Git Tags (Versioning) 👉 Tags are like milestones / backups in Git 📌 Example: Version1 → 3 commits Version2 → 2 more commits Version3 → 2 more commits 👉 We can mark versions like: • app-v1 • app-v2 • app-v3 ⸻ 🔹 🧪 Hands-on Example mkdir project cd project git init touch file1 file2 file3 git add file1 git commit -m "file1 commit" git add file2 git commit -m "file2 commit" git add file3 git commit -m "file3 commit" 👉 Apply tags: git tag app-v1 git tag git log 👉 Push tag to GitHub: git push origin app-v1 git push origin --tags 🔹 🍴 Git Fork 👉 Fork = Copy of someone else’s repo into your GitHub 📌 Steps: 1. Click Fork in GitHub 2. Repo copied to your account 3. Clone → Make changes → Push 💡 Used in open source contributions ⸻ 🔹 ⚠️ Merge Conflicts (Real-Time) 👉 When 2 people change same file/line → Conflict 🎬 Example: Tillu & Shanon both ask Radhika for movie at 1:30 PM 😅 👉 Same time → Conflict 💡 Solution: • Manually edit file • Remove conflict markers • Commit resolved code ⸻ 🔹 🔁 Git Alternatives • Bitbucket • Azure Repos • AWS CodeCommit ⸻ 🔹 🔵 Bitbucket Basics 👉 Same as GitHub (Repo hosting) 📌 Workflow: • Create repo • Clone repo • Create branch • Commit changes • Push & Pull ⸻ 🔹 🔐 Bitbucket Token (App Password) 📌 Steps: • Go to Settings → Access Management • Create App Password / API Token • Set permissions (read/write) • Use instead of password ⸻ 💡 Pro Tip: Use tags for releases, forks for contributions, and always resolve conflicts carefully! You’re now thinking like a real DevOps Engineer 🚀 #DevOps #Git #GitHub #Bitbucket #VersionControl #100DaysOfDevOps #LearningJourney #Cloud #Automation #RealTime #flm #frontlinemedia #reach #edutech Frontlines EduTech (FLM)
To view or add a comment, sign in
-
-
Git Series | Day 10: The Workflow Multitasker — Mastering Git Stash & Release Tags 🏷️🚀 As a DevOps Engineer, priorities shift in seconds. Today I learned how to handle emergency context-switching and how to officially mark production milestones using Git’s versioning tools. 1. Git Stash: The "Pause" Button Sometimes you're mid-feature and a critical bug comes in. You can't commit unfinished code, but you can't lose it either. The Concept: Git Stash takes your uncommitted changes (both staged and unstaged) and "hides" them away in a temporary storage area, giving you a clean working directory. Key Commands: git stash -m "message": Save your current progress with a label. git stash list: See all your "paused" work. git stash apply: Bring back the most recent changes but keep the record in the stash list. git stash pop: Restore your work and delete it from the stash simultaneously. git stash drop: Permanently delete a stash if the work is no longer needed. 2. Git Tags: Marking the Milestones In production environments, we don't deploy "commits"; we deploy Versions. Lightweight Tags: A simple pointer to a commit (v1.0, v2.0). Annotated Tags: These are stored as full objects in the Git database. They include the tagger's name, email, date, and a message. This is the Senior DevOps Standard for official releases. Key Commands: git tag -a v1.0 -m "Production Release": Create an annotated tag. git show v1.0: View detailed metadata about the release. git push origin v1.0: Tags must be pushed to the remote server explicitly. git push origin --tags: Push all local version markers to GitHub at once. By using annotated tags, I ensure every production deployment is version-controlled and easily rollable, providing the stability required for enterprise-grade infrastructure. #Git #DevOps #100DaysOfCode #ReleaseManagement #SoftwareEngineering #GitStash #Versioning #SystemAdmin #AgileDevelopment
To view or add a comment, sign in
-
-
🚀 DevOps Journey – Day 18 / 100 Today I learned real-time Git workflow with multiple developers + GitHub repo management 🔥 ⸻ 🔹 🧑💻 Real-Time Scenario 👨💻 Dev1 → Already developed code & pushed to GitHub 👨💻 Dev2 → New joiner (no code in local system) 👉 What should Dev2 do? ✔️ Clone the Repository • git clone <repo_url> → Entire code + history comes to local ⸻ 🔹 🔄 Clone vs Pull ✅ Clone • First time download • Full repo + all branches ✅ Pull • Get latest changes • Used after clone 💡 Pull = Fetch + Merge ⸻ 🔹 🌿 Branch & Sync • git branch -a → Show local + remote branches 👉 Workflow: 1. Make changes locally 2. git push → Send to GitHub 3. Other dev makes changes 4. git pull → Get updates ⸻ 🔹 🔍 Fetch vs Merge • git fetch origin branch → Check new commits (no merge) • git merge origin/branch → Merge changes into local ⸻ 🔹 ⚙️ GitHub Repository Settings 📌 You can manage repo using UI: • Rename repository • Change default branch • Change visibility (Public → Private) • Transfer ownership • Archive (read-only mode) • Delete repository (Danger Zone ⚠️) ⸻ 🔹 🆚 Git vs GitHub • Git → CLI tool (local system) • GitHub → Web UI (remote repo hosting) ⸻ 💡 Pro Tip: Every developer should know this flow: 👉 Clone → Work → Push → Pull → Repeat This is how real companies work 🚀 #DevOps #Git #GitHub #Linux #VersionControl #100DaysOfDevOps #LearningJourney #Cloud #Automation #RealTime #frontlinemedia #flm #DevSecOps #MultiCloud
To view or add a comment, sign in
-
-
🚀 Master Git Like a Pro — Save This Cheat Sheet! If you're in DevOps, SRE, or Software Engineering… 👉 Git is your daily weapon. But remembering commands = 😵💫 So here’s a quick breakdown you’ll actually use: 🔹 Basic Commands • git init → Start a new repository • git clone <url> → Copy repo locally • git status → Check changes • git add . → Stage all changes • git commit -m "msg" → Save changes 🌿 Branching • git branch → List branches • git checkout -b feature → Create + switch branch • git merge feature → Merge into main • git branch -d feature → Delete branch 🌍 Remote • git pull → Fetch + merge latest changes • git push → Upload your commits • git remote -v → Show remote repos ⏪ Undo Changes • git checkout -- file → Discard changes • git reset HEAD file → Unstage file • git revert <commit> → Undo commit safely • git reset --hard → Reset everything (⚠️ careful!) 📜 Logs & Debugging • git log → Full history • git log --oneline → Compact view • git diff → See changes • git blame file → Who changed what 📦 Stashing • git stash → Save work temporarily • git stash pop → Restore work • git stash list → View stashes 💡 Pro Tips ✔️ Commit small, commit often ✔️ Use meaningful commit messages ✔️ Always pull before push ✔️ Use branches — never work directly on main 🔥 If this helps you: ✔️ Save it (you’ll need it later) ✔️ Follow for more DevOps/SRE content #Git #DevOps #SRE #SoftwareEngineering #Coding #GitCommands #VersionControl #LearnGit #ProgrammingTips #DevOpsEngineer #Cloud #Kubernetes #Terraform #CareerGrowth #TechCommunity #100DaysOfCode
To view or add a comment, sign in
-
-
👨💻 50-day journey to revisit and strengthen my DevOps engineering skills 📌 Day 2/50 📌 ⚙️ Tools I’ll be working with: Git | GitHub Actions Today, I focused on how local Git operations turn into real CI/CD execution using GitHub Actions. In production environments, every pipeline execution is a result of developer actions performed locally, making it critical to understand the complete flow from code creation to deployment trigger. 🔄 Flow Overview: 💠 Developer writes code locally 💠 Commits and pushes using Git 💠 Code is pushed to GitHub 💠 GitHub Actions workflow is triggered 💠 CI/CD pipeline executes (build, test, deploy) ➡️ Flow attached below 👇 📌 Note: Key CI/CD stability considerations as covered in Day 1 are critical. ➡️ For a more detailed understanding of GitHub Workflows and Actions, I’ve referred to the official documentation—feel free to explore it for deeper insights 🔗 https://lnkd.in/gm77PY7y 🚨 Possible Issue Scenario: A CI pipeline was set to trigger on every push to the main branch. A developer pushed changes without syncing with the latest remote updates, causing merge conflicts and pipeline failure due to inconsistent code. 🛠️ Resolution: Pulled latest changes from the repository Resolved conflicts locally Pushed updated code Pipeline re-triggered and executed successfully 💡 Always sync before pushing. ➡️ The key takeaway is that CI/CD pipelines are only as reliable as the version control practices behind them. Proper use of git pull, disciplined commits, and clean synchronization between local and remote repositories ensures smooth pipeline execution and avoids unnecessary failures. #DevOps #git #cicd #Github #skills #GithubCommands #Branchingstrategy #GithubActions #GithubDocs #Reskill #Workflow #Syntax
To view or add a comment, sign in
-
More from this author
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