【问题标题】:Git branch inaccessibleGit 分支无法访问
【发布时间】:2015-07-18 03:46:03
【问题描述】:

编辑

另外,由于分支名称相同,如何删除我当前所在的分支(错误的分支)?如果我结帐 master 比我不知道哪个分支是正确的。

编辑编辑

我跑了

git branch --verbose

master             99b97d2 prep test
migrate_to_rpsec   d91fd47 start model tests
* migrate_to_rspec   99b97d2 prep test

如何按上行号删除/切换?我想要列表中的第二项。

我创建了一个名为migrate_to_rspec 的单独分支。我工作并致力于那个分支

git add .

git commit -m 'finish model tests'

git branch

  • 主人
  • migrate_to_rspec

然后我搬到了主人

git checkout master

然后我尝试从最后一个分支合并

git merge migrate_to_rspec

得到了 合并:migrate_to_rspec - 不是我们可以合并的东西

所以我再次检查了我的分支

git branch

  • 主人

  • migrate_to_rspec

并且无法返回另一个分支

git checkout migrate_to_rspec

得到: 错误:pathspec 'migrate_to_rspec' 与 git 已知的任何文件都不匹配。

然后我跑了(愚蠢地) git checkout -b migrate_to_rspec

所以现在我有:

  • 主人

  • migrate_to_rpsec

  • migrate_to_rspec

我怎样才能回到原来的分支?怎么会有两个同名,一个我不能访问,一个我可以访问?

【问题讨论】:

    标签: git github version-control merge


    【解决方案1】:

    将显示所有内容的完整拼写的低级命令是

    git for-each-ref
    

    你可以告诉 git 删除任何看起来有问题的 ref

    git update-ref -d $thatfullspelling
    

    。 . .

    但在这种情况下,我只是注意到了问题:

    migrate_to_rpsec
    migrate_to_rspec
    

    。 . .

    【讨论】:

    • 我最终做了什么,因为他们确实有完全相同的名称,我认为这不可能是为它下载一个 gui 并设法在 gui 中切换分支并根据命令更新线。很奇怪,但它奏效了。
    猜你喜欢
    • 2012-02-05
    • 2011-11-25
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 2015-11-29
    • 1970-01-01
    • 2012-11-09
    • 1970-01-01
    相关资源
    最近更新 更多