无法签出连字符开头的git分支(

我克隆了一个git仓库。
这个仓库有一个类似-feature-abc的远程分支。
当我输入git checkout -feature-abc ,我得到:

error: unknown switch `e'

任何想法如何检查这个分支?


尝试使用这种语法:

git checkout -- -feature-abc

双连字符语法应该有助于将命令选项从实际的分支名称参数中分离出来,正如我之前在“删除严重命名的git分支”中所解释的。


如果这不起作用,您可以按照“如何重命名本地Git分支?”中提出的方法进行操作。

进入你的工作副本的.git / refs / heads,找到文件名“-dumb-name”,得到分支的散列。 然后这将检查出来,用一个理智的名称创建一个新的分支,并删除旧分支。

  • 进入你的工作副本的.git/refs/heads
  • 找到名为“ -feature-abc ”的文件,
  • 获取分支的散列( cat文件)。
  • 然后检查出来,用一个理智的名字创建一个新的分支,并删除旧分支。
  • git checkout {hash}
    git checkout -b brilliant-name
    git branch -d -- -dumb-name
    

    最后,我能够根据VonC的答案获得工作。

    解决方案1:

    git checkout -b feature-abc origin/-feature-abc

    解决方案2:

  • 进入你的工作副本的.git/refs/remotes/origin
  • 找到名为“ -feature-abc ”的文件,
  • 获取分支的散列( cat文件),
  • 然后检查出来,用一个理智的名字创建一个新的分支,
  • 使新的分支跟踪远程分支。
  • git checkout {hash}
    git checkout -b feature-abc
    git branch --set-upstream-to=origin/-feature-abc feature-abc
    

    让现有的Git分支跟踪远程分支?

    链接地址: http://www.djcxy.com/p/2617.html

    上一篇: Can't checkout git branch started with hyphen (

    下一篇: How can I rename my branch from TortoiseGit?