@@ -43,6 +43,7 @@ class WorkspaceCommand extends BaseCommand {
4343 private const WORKTREE_OPERATIONS = array (
4444 'add ' => array ( 'ability ' => 'datamachine-code/workspace-worktree-add ' ),
4545 'list ' => array ( 'ability ' => 'datamachine-code/workspace-worktree-list ' ),
46+ 'get ' => array ( 'ability ' => 'datamachine-code/workspace-worktree-list ' ),
4647 'remove ' => array ( 'ability ' => 'datamachine-code/workspace-worktree-remove ' ),
4748 'prune ' => array ( 'ability ' => 'datamachine-code/workspace-worktree-prune ' ),
4849 'cleanup ' => array ( 'ability ' => 'datamachine-code/workspace-worktree-cleanup ' ),
@@ -3872,7 +3873,7 @@ public function worktree( array $args, array $assoc_args ): void {
38723873 $ operation = $ args [0 ] ?? '' ;
38733874
38743875 if ( '' === $ operation ) {
3875- WP_CLI ::error ('Usage: wp datamachine-code workspace worktree <add|list|remove|prune|locks|cleanup|cleanup-artifacts|abandoned|bounded-cleanup-eligible-apply|cleanup-eligible-drain|emergency-cleanup|reconcile-metadata|backfill-origin-session|active-no-signal-report|active-no-signal-finalized-apply|active-no-signal-equivalent-clean-apply|active-no-signal-merged-apply|active-no-signal-remote-clean-apply|active-no-signal-drain|refresh-context|finalize|mark-cleanup-eligible> [<repo>] [<branch>] [--flags] ' );
3876+ WP_CLI ::error ('Usage: wp datamachine-code workspace worktree <add|get| list|remove|prune|locks|cleanup|cleanup-artifacts|abandoned|bounded-cleanup-eligible-apply|cleanup-eligible-drain|emergency-cleanup|reconcile-metadata|backfill-origin-session|active-no-signal-report|active-no-signal-finalized-apply|active-no-signal-equivalent-clean-apply|active-no-signal-merged-apply|active-no-signal-remote-clean-apply|active-no-signal-drain|refresh-context|finalize|mark-cleanup-eligible> [<repo>] [<branch>] [--flags] ' );
38763877 return ;
38773878 }
38783879
@@ -4060,6 +4061,16 @@ public function worktree( array $args, array $assoc_args ): void {
40604061 $ input ['include_disk ' ] = $ want_disk ;
40614062 break ;
40624063
4064+ case 'get ' :
4065+ if ( empty ($ args [1 ]) ) {
4066+ WP_CLI ::error ('Usage: worktree get <handle> [--with-status] [--format=json] ' );
4067+ return ;
4068+ }
4069+ $ input ['handle ' ] = (string ) $ args [1 ];
4070+ $ input ['include_status ' ] = true ;
4071+ $ input ['include_disk ' ] = false ;
4072+ break ;
4073+
40634074 case 'remove ' :
40644075 // Accept either the two-arg `<repo> <branch>` form or a single
40654076 // `<repo>@<branch-slug>` handle (as printed by `list`/`path`/cleanup
@@ -4512,6 +4523,7 @@ private function renderWorktreeResult( string $operation, array $result, array $
45124523 }
45134524
45144525 switch ( $ operation ) {
4526+ case 'get ' :
45154527 case 'list ' :
45164528 $ worktrees = $ result ['worktrees ' ] ?? array ();
45174529 if ( ! empty ($ assoc_args ['stale ' ]) ) {
0 commit comments