V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Sayuri
V2EX  ›  GitHub

refs/master 和 refs/heads/master 带来的问题

  •  
  •   Sayuri · 115 天前 · 1125 次点击
    这是一个创建于 115 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我这边团队有一个 GitHub 开源仓库,一年来无法正常使用 git pull 或者 git pull origin master 拉取代码。经过深入调查,发现了这件事情:

    # git remote ls
    ...
    aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa        refs/heads/master
    bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb        refs/master
    

    其中 a 是真正的 master 分支,而 b 是一年前的某个状态,似乎是某个人 push 上去的。 我尝试去解决的时候,发现我用 git push -f origin :refs/master 的时候被拒绝。

    # git push origin --delete -f refs/master
     ! [remote rejected]     refs/master (cannot lock ref 'refs/master': reference already exists)
    

    这个有什么好的办法解决吗?

    5 条回复
    sagaxu
        1
    sagaxu  
       115 天前
    重新 clone 一个,如果不能 pull ,就是 repo 有问题,反之是本地的问题。repo 有问题,登陆到 github 后台操作解决,本地有问题就删了重拉。
    Sayuri
        2
    Sayuri  
    OP
       115 天前
    @sagaxu 重新 clone 一个也是如此。团队内多名成员都是如此。
    GitHub 后台该如何解决这个问题呢?
    sagaxu
        3
    sagaxu  
       115 天前
    @Sayuri 一般是特殊分支名称引起的,删掉或者改名就好了。把 repo 地址放出来看看。
    Sayuri
        4
    Sayuri  
    OP
       115 天前
    @sagaxu https://github.com/mycard/ygopro-scripts

    你可以尝试一下,clone 之后 git pull origin master
    sagaxu
        5
    sagaxu  
       115 天前
    去 github 后台建一个 main 分支设置为 default ,然后删掉 master 分支,确保两个 master 都没有了,最后再把 main 改名成 master
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1604 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 19ms · UTC 16:56 · PVG 00:56 · LAX 08:56 · JFK 11:56
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.