You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: Handle special characters in branch names (#945)
git-spice failed to work with branch names containing
non-ASCII characters like θ, ✅, 👨💻, café, or 日本語.
The issue occurred when reading branch metadata
from the state storage, which stores data as Git tree objects.
The root cause was that `git ls-tree` without the `-z` flag
returns quoted and escaped filenames for "unusual" characters.
For example, a branch named `feature/θ-theta` would be returned
as `feature/\316\270-theta` (escaped UTF-8 bytes).
This change updates both `ListTree` and `MakeTree` operations
to use the `-z` flag, which uses NUL-byte termination
and preserves UTF-8 characters exactly as they appear.
Additionally, ShamHub's find-by-branch API pattern was updated
from `{branch}` to `{branch...}` to match branch names
containing forward slashes, which are valid Git branch names.
Resolves#944
Co-Authored-By: Claude <noreply@anthropic.com>
0 commit comments