Can't checkout git branch started with hyphen (
I have cloned a git repository.
This repository has a remote branch something like -feature-abc
.
When I type git checkout -feature-abc
, I get:
error: unknown switch `e'
Any idea how to checkout this branch?
Try using this syntax:
git checkout -- -feature-abc
The double hyphen syntax should help git separate the command options from the actual branch name parameter, as I explained before in "Deleting a badly named git branch".
If that doesn't work, you can follow the recipe suggested in "How do I rename a local Git branch?"
Go into your working copy's .git/refs/heads, find the filename "-dumb-name", get the hash of the branch. Then this will check it out, make a new branch with a sane name, and delete the old one.
.git/refs/heads
, -feature-abc
", cat
the file). git checkout {hash}
git checkout -b brilliant-name
git branch -d -- -dumb-name
Finally I am able to get things working based on VonC's Answer.
Solution 1:
git checkout -b feature-abc origin/-feature-abc
Solution 2:
.git/refs/remotes/origin
, -feature-abc
", cat
the file), git checkout {hash}
git checkout -b feature-abc
git branch --set-upstream-to=origin/-feature-abc feature-abc
Make an existing Git branch track a remote branch?
链接地址: http://www.djcxy.com/p/2618.html上一篇: 如何使头在git中掌握?
下一篇: 无法签出连字符开头的git分支(