我设法在git中创建了一个名为'-f'
的分支e.g。
$ git branch
* (no branch)
-f
如何删除dang的东西? git branch -d -f不起作用,也不会git branch -d'-f'甚至git branch -d -f -f
答案 0 :(得分:15)
git branch -d -- -f
--
符号通常会停止使用许多Linux工具解析命令行选项。
另一种方式是
git update-ref -d refs/heads/-f
但是git-update-ref
相当危险。
答案 1 :(得分:3)
不确定这是否有效,但Unix / Linux风格的命令中的--
参数通常告诉命令你已经完成了传递选项,现在你传递了真正的参数:
git branch -d -- '-f'
答案 2 :(得分:0)
我愚蠢地用连字符命名了一个分支,然后检查了主人。我不想删除我的分支,我在其中工作。
这些都没有奏效:
git checkout -dumb-name
git checkout -- -dumb-name
"
s,'
和\
也无济于事。
这很有用:进入你的工作副本.git / refs / heads,找到文件名“-dumb-name”(或其他)并获取分支的哈希值。然后:
git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name