我将分支重命名为从 Firefox 复制并粘贴到 Git-for-Windows shell (MinGW64) 中的名称,现在分支名为<U+0096><U+0096>DEV-
。据我所知,前导字符<U+0096>
代表 shell 无法忽略的不可见或不可打印字符,或者这是我从中复制分支名称的 Jira 中的一个相当烦人的问题。
我能够根据 中的提交哈希挑选提交reflog
。现在,我想摆脱分支(最好在命令行上以便学习一些 Windows 技巧)。
答案1
您bash
可以使用 C 风格的转义序列,语法如下:$'string'
。因此,您可以使用
> git branch -D $'\x96\x96DEV-'
如果您不知道确切的字节数,您可以使用这个来找出:
> git show-ref | sed -n 's#.* refs/heads/##p' | grep -a DEV- | hexdump -C
00000000 96 96 44 45 56 2d 0a |..DEV-.|
00000007
您必须省略结尾的0a
或0d 0a
。
答案2
使用
git branch -D $'\xC2\x96\xC2\x96DEV-'
字符 96 的 UTF 编码为0xC296