fix(git): correct blob-show classification for :^ pathspec and separated flag operands
B1: `:^` is an exact synonym of `:!` (exclude magic) and is a pathspec, not a blob, so exclude it from `is_blob_show_arg` — `git show <rev> :^dir` now routes to the commit-diff path instead of a raw blob dump. B2: only git show's first positional object can be a `<rev>:<path>` blob. `show_positionals` walks the args with git's own flag/value grammar (`consumes_next_token_as_value`), so a value-taking flag's separate operand (`-S 'url:1'`, `-L 1,2:file`) is skipped rather than misread as a blob and truncated to 8 KiB. This also resolves the blob/commit-mix case.
B
breisnerlopez committed
d29650acdf8f68aead9f06f39b6f0c8dbff1ab82
Parent: 5be75c2