如何摆脱指向origin/master的远程origin/HEAD?

2024-06-08

最近,我在两个不同的复制服务器上更改了我的原始遥控器。

现在我在服务器上遇到这种情况,一切正常:

$git branch -a
 * master
 remotes/origin/master

在另一台服务器上我有这个

$git branch -a
 * master
 remotes/origin/HEAD -> origin/master
 remotes/origin/master

没什么严重的,因为一切都应该工作,但为了清洁起见,我希望有同样的情况。

所以我尝试:

git branch -d -r origin/HEAD

答案是:

Deleted remote branch origin/HEAD (was 542d392).

但后来我有:

$git branch -a
 * master
 remotes/origin/HEAD -> origin/master

我也尝试修剪:

$git pull -p  origin master

但还是一样……还没有机会像其他 srvr 那样把它清理干净。

有什么提示吗?

非常感谢

EDIT

回答评论“git update-ref -d refs/remotes/origin/HEAD 后发生了什么”

    koala@server:~/www$ git branch -a
    * master
      remotes/origin/HEAD -> origin/master
      remotes/origin/master
    koala@server:~/www$ git update-ref -d refs/remotes/origin/HEAD
    koala@server:~/www$ git branch -a
    * master
      remotes/origin/HEAD -> origin/master
    koala@server:~/www$ git branch -r
      origin/HEAD -> origin/master

The -> in the git branch输出表明这是一个符号引用:也就是说,引用本身不指向提交,而是指向另一个引用。 (其他引用也可以是象征性的,但至少理想情况下,遵循所有这些名称最终会导致常规引用(非符号分支名称),它指向最终提交。)

这里的问题是git branch不知道如何删除符号引用。当您要求它删除远程跟踪分支时origin/HEAD,它遵循符号引用,发现它是origin/master,并删除origin/master反而。

The git remote至少在 Git 的更高版本中,命令确实知道如何删除它:

git remote set-head <name> --delete

在这种情况下将转化为git remote set-head origin -d(缩短--delete; see 文档 https://www.kernel.org/pub/software/scm/git/docs/git-remote.html).

如果您的 Git 还不够新,无法支持此功能,您可以使用“plumbing”命令git symbolic-ref https://www.kernel.org/pub/software/scm/git/docs/git-symbolic-ref.html,它可以轻松删除符号引用,但您必须完整拼写它们:

git symbolic-ref -d refs/remotes/origin/HEAD

如果您的 Git 版本太旧,缺少-d此处标记,您必须通过编辑手动删除符号引用.git/packed-refs如果需要(可能不需要,如果你的 Git 是really旧的它可能永远不会被创建)并删除文件.git/refs/remotes/origin/HEAD(它是一个包含ref:和另一个分支的名称,或者是一个符号链接(如果您的 Git 是)really old).

无论如何,这个名字可能会回来git fetch(如果我没记错版本号,在手动删除引用后,我在某些 Git 1.6.* 或 1.7.* 版本中就遇到过这种情况)。不同版本的 Git 在此表现出不同的行为。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何摆脱指向origin/master的远程origin/HEAD? 的相关文章

  • 空提交的 Git 补丁

    我创建一个空提交 git commit allow empty m something important 有时它很有用 例如协调 2 个 或更多 不同的 git 树 然而 当我 git format patch 空提交被省略 因为它们不与
  • dulwich - 从远程仓库身份验证克隆

    我找不到有关此主题的任何资源 我需要通过提供用户名和密码从私有存储库进行克隆 然而 当它们作为关键字参数提供给 dulwich get client from path 时 会出现错误 提示 未知参数 用户名 这似乎是一件简单的事情 但我找
  • 更快的“git rebase --preserve-merges”方法

    我通过创建一系列功能分支来使用 git 并在完成后将它们合并到 mastergit merge no ff 这会创建空的合并提交 可用于识别先前功能分支的起点和终点 为了处理多个并发分支 甚至嵌套分支 我使用 rebase 我从不合并回去
  • 有没有办法显示 Visual Studio 执行的 Git 命令? [复制]

    这个问题在这里已经有答案了 在 Visual Studio Code 中 有一个 显示 Git 输出 菜单项 显示最近运行的 Git 命令 有关其外观的示例 请参阅3 35 在这个视频中 https code visualstudio co
  • 使用 git 同时维护不同版本的代码

    我有一个需要优化的代码 我想同时维护一组版本的代码 每个版本可以描述为一些功能 优化的组合 最终 我将决定哪个版本是最好的 我不想将这些版本合并为更少的版本 但是 我希望能够对 大 源文件进行 小 修改 这可能会跨版本转移 并且我希望这一修
  • git merge 和 git merge origin 之间的区别

    这不是一个关于git merge origin branch vs git merge origin branch git merge
  • 如何快速查看哪个 Git 分支是最新的?

    例如 如果 git 上有 4 个分支 如下所示 branch1 branch2 current branch branch3 newest commits here master oldest 我的问题是 如何从 git 命令行检查我当前的
  • git fetch 失败“refs/remotes/origin/pr/34 同时跟踪两者”

    我是 git 新手 我被困在 git fetch 上 我在 TFS 和 SVN 上有更多经验 所以欢迎任何类比 所以我在 Github 上找到了一个我分叉的项目 源项目 Xpose 有色状态栏 https github com Mohamm
  • 在 ConEMU 中显示 git 分支

    有没有办法在 ConEmu 中以视觉方式 背景或类似 在 git 中显示分支 Git 分支可以在普通的 cmd 或 Far Manager 提示符中可见 所有魔法都是通过特殊的 ANSI 序列完成的 必须选中 Inject ConEmuHk
  • Jira 和 git:如何反映所有分支?

    使用 git Fisheye Crucible 和 Jira 4 2 的开发基础架构 自我们在 Jira 中配置映射以来 对 Fisheye 注册存储库的提交反映在 Jira 项目和票证中 然而 似乎只有主分支上的提交才会被反映 在 Cru
  • 如何从现有 git 存储库创建 Netbeans 7 项目?

    我想象某个地方有一个 来自回购的新项目 选项 但我找不到它 还有比这更多的事情吗 还是我错过了什么 Use the Team菜单 选择 Git gt 克隆 将存储库克隆到本地文件夹后 NetBeans 将为您提供打开项目的选项 尝试创建项目
  • git 压缩并保留上次提交的时间戳

    考虑我有提交 A B C 如果我使用git rebase i将所有三个提交压缩为一个 我们可以 pick A squash B squash C 我看到结果提交A有其原始时间戳 如何让它继承提交的时间戳C 最后一个 我能想到的是git co
  • 通过防火墙后面的 ssh 访问 git 存储库

    我想在仅允许 http 代理访问的公司防火墙后面访问 克隆 推 拉 私有 通过 ssh git 存储库 我已经编写了一个强大的 Java 守护进程 程序 基于 JSCh 类库 它允许我利用本地和远程端口转发 我希望利用它 但当我尝试设想如何
  • 如何撤消 git pull?

    由于远程源上不需要的提交 我想撤消 git pull 但我不知道必须重置回哪个版本 我怎样才能回到在远程源上执行 git pull 之前的状态 或者使其比其他答案更明确 git pull whoops git reset keep HEAD
  • 用于从两台机器进行开发的 Git 存储库设置?

    我刚刚开始使用 git 对与 SVN 的工作流程差异印象深刻 但我遇到了一个结构 设置问题 文档似乎没有直观地解释如何设置 我想知道是否这甚至是可能的 我的设置是 我有几台计算机 台式机和笔记本电脑 进行开发 因此 为了更轻松地保持同步并为
  • 具有共享代码库的多个产品的版本控制和发布管理

    我目前正在尝试弄清楚 在这样一种情况下 如何使用 git flow 进行发布管理 我有一个 git 存储库 其中包含两个解决方案中的大约 15 个项目以及数据库脚本 每个解决方案基本上都包含一个将生成可执行文件的项目和 10 多个包含两个解
  • Git 完成和 PS1 不起作用:Ubuntu 12.04 上“sudo -s”或“sudo su”上的“__git_ps1:命令未找到”

    我安装了 git 和 git flowcompletion 并将这些行添加到 Ubuntu 12 04 机器上 root 和 normal user 的 bashrc 中 source etc git completion bash sou
  • Git 命令在 Mac 终端中不起作用:“dyld:未找到符号:___strlcpy_chk”错误

    我正在使用命令 git clone ssh 并在终端上收到以下错误 dyld lazy symbol binding failed Symbol not found strlcpy chk Referenced from usr local
  • github 没有与名称关联的地址

    这些天我在 github 上一直遇到问题 我在 github 上创建了一个新的存储库 然后从本地计算机尝试将我的代码推送到 github git remote add origin email protected cdn cgi l ema
  • 我可以直接将树读入工作目录并遍历索引吗

    我正在探索 git 的内部结构 我想知道是否有一个 GIT 命令可以让我直接将树读入工作树而不使用index 例如我创建了一棵树 echo f1 content git hash object w stdin a1deaae8f9ac984

随机推荐

  • 更改导航栏悬停时 div 的背景图像

    我正在开发一个项目 我对 Javascript 很陌生 所以我想知道是否有 Jquery 代码或只是一个关于如何使背景图像在导航菜单悬停时更改的过程 例如将鼠标悬停在链接一上会将 div 的背景图像更改为图像 1 将鼠标悬停在链接二上会将
  • gitk 无法在 macOS 10.14 (Mojave) 上启动

    当我尝试在 macOS Mojave 10 14 4 上运行 gitk 时 出现以下错误 Error in startup script file System Library ScriptingDefinitions CocoaStand
  • Google Cloud:X-Cloud-Trace-Context 与应用程序日志traceId 不同

    我有一个部署在谷歌云中的 Spring Boot 应用程序 我面临一个相当奇怪的问题 X Cloud Trace Context 由谷歌设置 我想是负载均衡器 但应用程序级别日志的traceId具有不同的traceId 与我在邮递员的响应标
  • 有可用的在线 Citrix 测试吗?

    有没有办法远程访问 CITRIX 进行一些简单的 QE 测试 我们的客户与我们的产品存在兼容性问题 并且我们内部没有 CITRIX PS VMWARE 映像也是一个选项 Citrix 的 VMware 设备将是一个好主意 此外 他们曾经有一
  • 在 C 中声明和初始化数组

    C 有没有办法先声明然后初始化数组 到目前为止 我一直在初始化一个这样的数组 int myArray SIZE 1 2 3 4 但我需要做这样的事情 int myArray SIZE myArray 1 2 3 4 在 C99 中 您可以使
  • 单元测试 Bash 脚本

    我们的系统除了 Java 代码之外还运行一些 Bash 脚本 既然我们正在努力测试所有可能损坏的东西 并且那些 Bash 脚本可能会损坏 我们想测试它们 问题是很难测试 Bash 脚本 有没有测试 Bash 脚本的方法或最佳实践 或者我们应
  • Pandas 使用 NaN 进行数据透视或重塑数据框

    我有这个数据框 我需要根据以下数据进行旋转或重塑frame col df frame 0 0 1 1 2 2 3 0 4 1 5 2 pvol 0 nan 1 nan 2 nan 3 23 1 4 24 3 5 25 6 vvol 0 10
  • Python 调试器是否会介入生成器?

    我目前正在使用 NetBeans IDE 和 Jython 2 5 1 当逐步调试我的项目时 一旦遇到生成器的迭代 调试器就会直接转到代码末尾 输出工作正常 但是一旦满足第一个生成器就无法进行逐步调试 这是所有 Python IDE 中 P
  • Oracle中“NUMBER”和“NUMBER(*,0)”相同吗?

    在甲骨文中文档 http docs oracle com cd B28359 01 server 111 b28318 datatype htm i22289据说 数字 精度 小数位数 如果未指定精度 则该列将存储给定的值 如果 未指定比例
  • Scala Monad - 完整的示例[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 为什么 afterRender 从未被调用?

    看一下下面的 HTML 示例 这是一个简单的KOforeach绑定和一个将新项目添加到的按钮observableArray 添加工作正常并且新项目出现 但是 那afterRender方法永远不会被调用 不会在初始绑定之后 也不会在添加 和呈
  • 如何获取任意类型的默认值

    在 C 中我可以写这样的东西 class AnyThing
  • URL 重写 OpenCart 产品 SEO

    我想重写我的 opencart 网上商店的产品网址 Opencart 本身有一个 seo 实现 这真的很糟糕 我已经更新了 seo 实现 以便能够对多个类别使用相同的关键字 请参阅 Opencart 重复 URL 关键字 https sta
  • 使用存储的密钥作为环境变量

    我有一个秘密密钥存储在 GCP 的秘密管理器中 我们的想法是使用该密钥通过云功能获取预算列表 现在 我可以从代码中访问该密钥 但我面临的问题是我需要使用该密钥设置一个环境变量 这是我添加密钥的方式 如果您的本地目录中有该文件 但是还有其他方
  • 如何使 Loopback 模型事件起作用?

    我尝试过一个例子http apidocs strongloop com loopback model http apidocs strongloop com loopback model MyModel on changed functio
  • 使用 boost::iterator_facade<>

    我有一个链表结构 struct SomeLinkedList const char bar int lots of interesting stuff in here DWORD foo SomeLinkedList pNext 它是现有
  • 尝试使用 FileProvider(Android) 获取 URI 时出现 NullPointerException [重复]

    这个问题在这里已经有答案了 我想在单击按钮后拍照 但我越来越NullPointerException当试图得到URI with FileProvider 这是我的错误代码 Caused by java lang NullPointerExc
  • 调整发散堆积条形图以使用通用更新模式

    我一直在使用可用的堆积条形图示例here https bl ocks org mbostock b5935342c6d21928111928401e2c8608使用以下代码 var data month Q1 2016 apples 384
  • git push 被拒绝,合并冲突,git pull --rebase

    我正在尝试推动我的提交 但不能 因为还有另一个提交 HEAD 竞赛中的同一级别 我知道我需要将这两个提交合并在一起 但不确定如何去做 我已经尝试过了git pull rebase My GIT CLI https i stack imgur
  • 如何摆脱指向origin/master的远程origin/HEAD?

    最近 我在两个不同的复制服务器上更改了我的原始遥控器 现在我在服务器上遇到这种情况 一切正常 git branch a master remotes origin master 在另一台服务器上我有这个 git branch a maste