Skip to content

Improve git status indicators with conflict detection #12

@theantichris

Description

@theantichris

🎯 Objective

Enhance git status display with merge conflicts, stash detection, and better visual indicators.

🎨 Current State

[main●●●⇡2]  # Basic dots for all status types

✨ Enhanced State

[main▲●?⇡2]  # Distinct symbols for each status
[main▲●✗]    # With conflict indicator
[main▲●📦]   # With stash indicator

📋 Implementation

  • File: dot_oh-my-zsh/custom/themes/cyberwave.zsh-theme
  • Function: Enhance cyberwave_git_status()
  • New Indicators:
    • Modified files (instead of first ●)
    • Staged files (keep current)
    • ? Untracked files (instead of third ●)
    • Merge conflicts
    • 📦 Stash present
    • Repository states (rebasing, merging, etc.)

🔧 Detection Methods

# Conflicts
git ls-files --unmerged | grep -q .

# Stash
git stash list | grep -q .

# Repository state
git status --porcelain -b | head -1

✅ Acceptance Criteria

  • Clear visual distinction between status types
  • Conflict detection works reliably
  • Performance doesn't degrade in large repos
  • Stash detection works
  • Repository state detection (rebase, merge, etc.)

🔧 Estimated Effort

⭐⭐ Medium - 20 minutes implementation

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions