Find the Best Cosmetic Hospitals

Explore trusted cosmetic hospitals and make a confident choice for your transformation.

“Invest in yourself — your confidence is always worth it.”

Explore Cosmetic Hospitals

Start your journey today — compare options in one place.

GitLab Code – Protected Git Branches – Tutorial Guide

Here is a comprehensive tutorial for understanding and configuring Protected Branches in GitLab 18.0, based on the image you’ve provided and the latest official documentation.


🔐 GitLab Protected Branches – Tutorial Guide (v18.0)

📘 Purpose:

Protecting branches in GitLab helps teams:

  • Prevent force pushes
  • Restrict who can merge or push
  • Enforce code review via merge requests
  • Safeguard main/stable branches from accidental or unauthorized changes

🔑 What is a Protected Branch?

A protected branch is a Git branch that has rules and restrictions applied to prevent:

  • Direct pushes (without approvals or pipelines)
  • Deletion by mistake
  • Bypassing CI/CD requirements

GitLab typically uses it for main, master, release/*, or production.


✅ Capabilities of Protected Branches

RestrictionDescription
Prevent Direct PushesOnly selected roles can push
Prevent Force PushesForce-push is disabled
Restrict Who Can MergeOnly selected users/roles can merge
Require Merge RequestsEnforce review before integration
Status Check Enforcement (EE+)Only allow merge if pipelines pass

🛠️ How to Protect a Branch in GitLab (GitLab Cloud / v18.0+)

🔹 Option 1: Using Branch Rules (Recommended)

Step-by-Step:

  1. Go to your Project → Settings → Repository
  2. Scroll to Branch Rules
  3. Click “Add branch rule”
  4. In the modal:
    • Branch name: e.g., main or release/*
    • Allowed to push: Choose Maintainers, Developers + Maintainers, or custom users/groups
    • Allowed to merge: Choose same
    • Optionally enable:
      • ✅ Require merge request approvals
      • ✅ Require successful pipeline
  5. Click “Create”

🎯 Now the branch is protected under branch rules — future pushes & merges are restricted.


🔹 Option 2: [Legacy] Using Protected Branches Panel (Deprecated)

In GitLab 18.0+, this is deprecated and migrated under Branch Rules UI.
Still visible under:
Settings → Repository → Protected branches section.

Here:

  • You can protect/unprotect branches
  • Define who can push/merge
  • Redirects to Branch Rules now

🎯 Best Practices

  • ✅ Protect all main, release, and production branches
  • ✅ Require merge requests to enforce peer reviews
  • ✅ Require pipeline success before merge (CI/CD)
  • ✅ Allow only maintainers to merge into protected branches
  • 🚫 Avoid giving push access to Developers on protected branches unless justified

💡 Real-World Example: Protect main Branch

SettingValue
Branch namemain
Allowed to pushMaintainers only
Allowed to mergeMaintainers only
Require pipeline✅ Enabled
Require approvals✅ Enabled (2 reviewers)

📎 CLI Tip (Git)

Once protected:

# Direct push will fail (if you're not allowed)
git push origin main
# You must open a Merge Request instead
Code language: PHP (php)

📷 Reference Screenshot Explanation (from your image)

  • Branch Rules are shown for main (default, protected)
  • ✅ Add new rules via “Add branch rule”
  • 🔒 Protected Branches section redirects to branch rules (GitLab is deprecating old interface)

🧪 Need More?


Find Trusted Cardiac Hospitals

Compare heart hospitals by city and services — all in one place.

Explore Hospitals

Similar Posts

Subscribe
Notify of
guest
0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments