Skip to content

Latest commit

 

History

History
407 lines (312 loc) · 14.6 KB

File metadata and controls

407 lines (312 loc) · 14.6 KB

📚 Branching Strategy Documentation Index

Welcome to the ThemisDB Git Flow Branching Strategy documentation! This index helps you find the right document for your needs.

🎯 Choose Your Document

📖 For First-Time Readers

Start here to understand the overall strategy:

  1. BRANCHING_IMPLEMENTATION_SUMMARY.mdSTART HERE

    • Overview of the entire branching strategy
    • What has been implemented
    • Quick reference to all documents
    • Time: 5-10 minutes
  2. BRANCHING_VISUAL_GUIDE.md

    • Visual diagrams and flowcharts
    • Real-world examples
    • Decision trees
    • Time: 10-15 minutes

📚 Complete Strategy Documentation

Choose based on your language preference:

  • BRANCHING_STRATEGY.md 🇩🇪

    • Complete strategy in German
    • All workflows and processes
    • Best practices and guidelines
    • Time: 30-45 minutes
  • BRANCHING_STRATEGY_EN.md 🇬🇧

    • Complete strategy in English
    • All workflows and processes
    • Best practices and guidelines
    • Time: 30-45 minutes

🚀 Quick References

For daily use and quick lookups:

  • BRANCHING_QUICK_REF.md
    • One-page cheat sheet
    • Common commands
    • Branch types and naming
    • Print this for your desk! 📄
    • Time: 2-3 minutes

🔄 Migration and Setup

For transitioning to the new strategy:

  • MIGRATION_GUIDE.md

    • Step-by-step migration instructions
    • For maintainers and contributors
    • Handling existing PRs
    • Troubleshooting common issues
    • Time: 15-20 minutes
  • BRANCH_PROTECTION_SETUP.md

    • GitHub branch protection configuration
    • CODEOWNERS setup
    • Automated scripts
    • Time: 10-15 minutes
  • MERGE_STRATEGY_MIGRATION.md 🆕

    • Migration to squash merge strategy
    • Why we changed from merge commits
    • Benefits and tradeoffs
    • FAQ and best practices
    • Time: 10-15 minutes
  • GITHUB_SETTINGS_CONFIGURATION.md 🆕

    • Step-by-step GitHub repository settings
    • Configure merge methods
    • Required for repository administrators
    • Time: 5-10 minutes
  • MERGE_STRATEGY_QUICK_REF.md 🆕

    • One-page merge strategy reference
    • When to squash vs merge commit
    • For daily use
    • Print this! 📄
    • Time: 2-3 minutes

🤝 Contributing

Updated guidelines for contributions:

  • CONTRIBUTING.md
    • How to contribute to ThemisDB
    • Updated with branching strategy
    • Code quality standards
    • PR process

📑 Documentation Map

Documentation Structure
│
├── 🎯 Getting Started
│   ├── BRANCHING_IMPLEMENTATION_SUMMARY.md    ← Overview
│   └── ci-cd/branching-release-history/BRANCHING_VISUAL_GUIDE.md ← Visual guide
│
├── 📖 Complete Guides
│   ├── BRANCHING_STRATEGY.md                  ← German
│   └── BRANCHING_STRATEGY_EN.md               ← English
│
├── 🚀 Quick References
│   └── BRANCHING_QUICK_REF.md                 ← Cheat sheet
│
├── 🔧 Setup & Migration
│   ├── MIGRATION_GUIDE.md                     ← Transition guide
│   ├── BRANCH_PROTECTION_SETUP.md             ← GitHub config
│   ├── MERGE_STRATEGY_MIGRATION.md            ← Squash merge migration 🆕
│   ├── GITHUB_SETTINGS_CONFIGURATION.md       ← GitHub settings 🆕
│   └── ci-cd/branching-release-history/MERGE_STRATEGY_QUICK_REF.md ← Merge quick ref 🆕
│
├── 🤝 Contributing
│   └── ../CONTRIBUTING.md                     ← Contribution guide
│
└── ⚙️ Configuration
   ├── ../.github/CODEOWNERS                  ← Code ownership
   └── ../.github/workflows/develop-ci.yml.example ← CI example

🎭 Choose by Your Role

👨‍💻 As a Developer

First time contributing:

  1. Read: BRANCHING_IMPLEMENTATION_SUMMARY.md
  2. Review: BRANCHING_VISUAL_GUIDE.md
  3. Keep handy: BRANCHING_QUICK_REF.md

Daily work:

👨‍💼 As a Maintainer

Initial setup:

  1. Read: BRANCHING_STRATEGY.md or BRANCHING_STRATEGY_EN.md
  2. Follow: MIGRATION_GUIDE.md (Maintainer section)
  3. Configure: BRANCH_PROTECTION_SETUP.md

Daily maintenance:

🆕 As a New Contributor

Getting started:

  1. Start: BRANCHING_IMPLEMENTATION_SUMMARY.md
  2. Understand: BRANCHING_VISUAL_GUIDE.md
  3. Contribute: CONTRIBUTING.md
  4. Print: BRANCHING_QUICK_REF.md

🔄 Migrating Existing PRs

If you have open PRs:

  1. Follow: MIGRATION_GUIDE.md (Contributors section)
  2. Use commands from: BRANCHING_QUICK_REF.md
  3. Ask for help in GitHub Discussions if stuck

📊 Document Comparison

Document Length Audience Purpose Print-Friendly
Implementation Summary Medium Everyone Overview
Visual Guide Long Visual learners Understanding flows
Strategy (DE/EN) Long Deep dive Complete reference ⚠️
Quick Reference Short Daily use Command reference
Migration Guide Medium Transitioning Step-by-step migration
Branch Protection Medium Maintainers GitHub setup

🔍 Find Information By Topic

Branch Types

Creating Feature Branches

Release Process

Hotfix Process

Pull Requests

Merge Strategy

Branch Protection

Migration

🎓 Learning Path

Beginner Path (1-2 hours)

1. BRANCHING_IMPLEMENTATION_SUMMARY.md (10 min)
   ↓
2. BRANCHING_VISUAL_GUIDE.md (15 min)
   ↓
3. CONTRIBUTING.md (20 min)
   ↓
4. Practice: Create a test feature branch
   ↓
5. Keep: BRANCHING_QUICK_REF.md for reference

Advanced Path (3-4 hours)

1. BRANCHING_STRATEGY.md or BRANCHING_STRATEGY_EN.md (45 min)
   ↓
2. BRANCH_PROTECTION_SETUP.md (15 min)
   ↓
3. MIGRATION_GUIDE.md (20 min)
   ↓
4. Practice: Complete workflow simulation
   ↓
5. Review: All example workflows

Maintainer Path (4-6 hours)

1. BRANCHING_STRATEGY.md (full read) (60 min)
   ↓
2. BRANCH_PROTECTION_SETUP.md (30 min)
   ↓
3. MIGRATION_GUIDE.md (maintainer sections) (30 min)
   ↓
4. Configure: Set up branch protection
   ↓
5. Test: Simulate complete release cycle
   ↓
6. Document: Any organization-specific additions

📝 Additional Resources

Related Documents in Repository

Configuration Files

External Resources

💬 Getting Help

Where to Ask Questions

About the branching strategy:

About migrating PRs:

General contribution questions:

Found errors in documentation:

  • 🐛 Create an issue with label documentation

🔄 Document Updates

Version History

Date Version Changes
2025-12-30 1.0 Initial branching strategy documentation

Review Schedule

These documents should be reviewed:

  • Quarterly - Check if strategy is working well
  • After major releases - Update examples
  • When feedback received - Improve clarity

Feedback

We welcome feedback on this documentation!

  • ✅ What worked well?
  • ❌ What was confusing?
  • 💡 What's missing?
  • 📝 Suggestions for improvement?

Submit feedback:

✅ Documentation Checklist

Use this checklist when reading the documentation:

First Time Setup

  • Read implementation summary
  • Review visual guide
  • Read complete strategy (DE or EN)
  • Print quick reference
  • Bookmark this index
  • Join GitHub Discussions

Before Contributing

  • Understand branch types
  • Know which branch to target
  • Familiar with PR process
  • Know commit message format
  • Aware of code quality checks

Regular Reference

  • Quick reference is easily accessible
  • Know where to find specific workflows
  • Understand troubleshooting steps
  • Know where to ask questions

🏆 Best Practices Reminder

Always remember:

  1. Feature branches branch from develop
  2. PRs target develop (not main)
  3. main branch is for releases only
  4. Hotfixes are urgent and go to main + develop
  5. Release branches prepare for production

🔗 Quick Links Table

Need Document Section
🎯 Overview Implementation Summary All
📊 Visual Flow Visual Guide All
📖 Complete Guide Strategy (DE) or Strategy (EN) All
Quick Commands Quick Reference Common Commands
🔄 Migrating Migration Guide For Contributors
🛡️ Setup Protection Branch Protection Quick Setup
🤝 Contributing Contributing Guide Development Workflow
🔀 Merge Strategy Merge Quick Ref All
⚙️ GitHub Settings GitHub Config All

📄 Print-Friendly Documents

These documents are optimized for printing:

  1. BRANCHING_QUICK_REF.md - One page reference
  2. MERGE_STRATEGY_QUICK_REF.md - Merge strategy reference 🆕
  3. BRANCHING_VISUAL_GUIDE.md - Visual diagrams
  4. BRANCHING_IMPLEMENTATION_SUMMARY.md - Overview

To print:

  1. Open document in browser
  2. Press Ctrl+P (Windows/Linux) or Cmd+P (Mac)
  3. Select "Save as PDF"

Last Updated: 2026-04-06
Maintainer: ThemisDB Documentation Team
Questions? Open a discussion


Tip: Bookmark this page! It's your central hub for all branching documentation.