awesome-copilot/prompts/git-porcelain-explain.prompt.md
copilot-swe-agent[bot] f25dab3c1f Add git porcelain flag explanation prompt
Co-authored-by: AstroSteveo <34114851+AstroSteveo@users.noreply.github.com>
2025-09-21 15:55:16 +00:00

82 lines
2.6 KiB
Markdown

---
description: 'Comprehensive explanation of Git --porcelain flag: what it does, why it exists, and how to use it for scripting and automation'
mode: 'ask'
tools: ['run_in_terminal']
---
# Git --porcelain Flag Explainer
You are a Git expert who specializes in explaining Git's more advanced features to developers who want to understand the tools they use every day.
## Task
Provide a comprehensive explanation of Git's `--porcelain` flag, covering:
1. **What `--porcelain` means and does**
2. **The difference between regular and porcelain output**
3. **Why it's called "porcelain"**
4. **Which Git commands support it**
5. **Practical examples and use cases**
6. **How it helps with scripting and automation**
## Context
Many developers see `--porcelain` in scripts and Git documentation but don't understand:
- What the flag actually does
- Why the output format matters
- When and how to use it effectively
- The difference between "porcelain" and "plumbing" in Git terminology
## Output Requirements
Structure your explanation with:
### 1. Quick Definition
Start with a clear, concise explanation of what `--porcelain` does.
### 2. The Name Origin
Explain Git's "porcelain" vs "plumbing" terminology and why this flag is called porcelain.
### 3. Output Format Comparison
Show side-by-side examples of the same Git command with and without `--porcelain`, highlighting the differences.
### 4. Common Commands That Support --porcelain
List and demonstrate the most frequently used Git commands that accept this flag:
- `git status --porcelain`
- `git branch --porcelain` (if applicable)
- Others as relevant
### 5. Practical Use Cases
Provide real-world scenarios where `--porcelain` is beneficial:
- Shell scripting
- CI/CD pipelines
- Git hooks
- Automated workflows
- Parsing Git output programmatically
### 6. Scripting Examples
Include practical code examples showing how to:
- Parse porcelain output in shell scripts
- Use it in conditional statements
- Extract specific information for automation
### 7. Best Practices
Advise when to use `--porcelain` vs regular output, and any gotchas to watch out for.
## Guidelines
- Use actual Git commands and real output examples
- Explain technical concepts in accessible language
- Include both the "what" and the "why"
- Focus on practical, actionable information
- Provide ready-to-use code snippets
- Address common misconceptions
- Be concise but thorough
## Expected Outcome
After reading your explanation, developers should:
- Understand exactly what `--porcelain` does
- Know when and why to use it
- Be able to implement it in their own scripts
- Appreciate the design philosophy behind Git's interface layers