feat: add --columns flag for list, sync, and prune commands#310
Merged
feat: add --columns flag for list, sync, and prune commands#310
Conversation
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Fix column order to match TUI code (remote before changes), clarify JSON output scope (list only), replace future size column examples with existing columns, add duplicate/whitespace handling rules, note long flag only. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Align error message column order with registry (remote before changes), replace +size config example with existing columns. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Remove unused clap::ValueEnum derive from ListColumn - Add ResolvedColumns type to track replace vs modifier mode - Thread columns_explicit through TuiState for responsive dropping - Add YAML tests for sync/prune --columns (status error cases) - Add shell completion task for column value suggestions - Add SKILL.md update task - Fix +size reference in help text Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The existing list.rs and TUI both display Changes before Remote. Align spec and plan to match this order instead of swapping them. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…rune Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add value completion for --columns in bash, zsh, fish, and fig for git-worktree-list, git-worktree-sync, and git-worktree-prune. Suggests all column names (annotation, branch, path, base, changes, remote, age, last-commit) as well as + and - prefixed variants. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Move column validation to run() before the TTY check so errors (like status column rejection) surface in both sequential and TUI modes. Also fix YAML test field name and modifier mode --columns= syntax. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Bold made headers appear white. Dim + underline keeps the subdued color while adding visual emphasis to distinguish headers from data. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The test framework field is output_not_contains, not output_excludes. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
--columnsflag togit-worktree-list,git-worktree-sync, andgit-worktree-prunethat controls which columns are displayed and in what order--columns branch,path,age— exact columns in exact order--columns=-annotation,-last-commit— add/remove from defaults using canonical orderingdaft.list.columns,daft.sync.columns,daft.prune.columns--columnsis specifiedstatuscolumn pinned on sync/prune (error if user tries to control it)+,-prefixed) across bash, zsh, fish, and figTest plan
mise run fmt:checkpassesmise run clippypasses with zero warningsmise run test:unitpasses (662 tests)columns-replace,columns-json,columns-modifier,columns-config,columns-errorssync:columns,prune:columnsmise run man:verifyconfirms man pages are up to dategit worktree list --columns branch,path,agegit worktree list --columns=-annotationgit worktree list --json --columns branch,pathgit worktree sync --columns statusproduces error🤖 Generated with Claude Code