警告:远程 HEAD 引用不存在的引用,无法结帐

2024-04-10

由于不同原因,这似乎是一个常见的错误。

我有一个简单的裸 git 存储库,名为“kiflea.git”,我像这样克隆它:

git clone git://kipdola.be/kiflea.git

然后 git 告诉我:warning: remote HEAD refers to nonexistent ref, unable to checkout.

是的,除了 .git 目录之外,地图中没有版本化文件。 无论如何,我唯一需要做的就是:

cd kiflea
git checkout master

它有效,所有文件都在那里。 但我认为克隆存储库会自动检查主库,那么到底发生了什么,我该如何修复它呢?

我注意到,在我做了之后git checkout master位,这被添加到我的本地 .git 配置文件中:

[branch "master"]
    remote = origin
    merge = refs/heads/master

有趣的是,这个 git 存储库在遥远的过去曾经是一个 svn 存储库。

PS:使用gitweb浏览裸存储库时,明显有一个master那里的分支:http://kipdola.be/gitweb/?p=kiflea.git;a=summary http://kipdola.be/gitweb/?p=kiflea.git;a=summary


The warning: remote HEAD refers to nonexistent ref, unable to checkout.意味着远程(裸)存储库包含分支参考在名为的文件中HEAD其值与同一存储库中任何已发布的分支都不匹配。实际上,该文件定义了哪个分行克隆存储库后应默认签出。

请注意,该警告仅意味着 git 未进行结帐。克隆的存储库在其他方面都很好。做就是了git branch -a查看可能的分支和git checkout the-branch-you-want解决该问题。

这通常会发生,因为默认contents对于该文件(.git/HEAD或普通HEAD对于裸存储库)是ref: refs/heads/master这说的是如果有人要clone这个存储库,他们应该默认克隆分支refs/heads/master。默认情况下,Git 将创建本地分支,无需refs/heads/前缀(即master默认情况下)。尝试git help symbolic-ref了解更多信息。

这种情况的问题在于Git没有提供修改的方法remote符号引用,因此您要么使用 Git 托管提供商已实现的内容(例如,如果您具有管理员权限,则设置 - GitHub 中的默认分支),或者必须使用分支名称master作为默认分支(因为这是文件的默认内容HEAD如果您无法修改该文件,您将陷入困境master永远)。

如果您有对远程 git 存储库的 shell 访问权限,您只需在remote机器并执行cd path/to/git/repo; git symbolic-ref HEAD refs/heads/XYZ where XYZ是您默认要使用的分支名称。

解决此问题的一种方法是创建一个没有提交的新远程裸存储库,然后执行git push name-of-the-remote my-special-branch-name这将导致包含单个分支的裸存储库my-special-branch-name但是HEAD符号引用仍然包含指向的默认值master。结果,您将收到上述警告。如果无法修改遥控器HEAD文件,您可以使用语法发布您的分支git push name-of-the-remote my-special-branch-name:master这意味着您当地的分支机构称为my-special-branch-name应该作为分支发布master在遥控器上。

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

警告:远程 HEAD 引用不存在的引用,无法结帐 的相关文章

  • 有谁知道类似于 SVN Time-Lapse View 的 Git 工具 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 SVN Time Lapse View 是一个跨平台查看器 可以下载文件的所有修订版本 并允许您通过拖
  • 有没有办法让 git flow 显示它在幕后执行的命令?

    有什么方法可以让 git flow 提前告诉我当我执行 flow 命令时它将执行的确切 git 命令吗 或者告诉我它是东吗 我只能看到输出和摘要吗 你可以使用Git的GIT TRACE 环境变量 http git scm com docs
  • git reset 命令中的 ~1 是什么意思?

    git 重置 HEAD 1 我的印象是 1 的意思是 从 HEAD 开始 遵循 1 链接 并将 HEAD 标签设置为新的提交节点 我正期待着 git 重置 HEAD 2 跟随 2 个链接 然后设置 HEAD 标签 但是 如果我尝试它 我会收
  • 哪个是更智能的 git 协议,ssh 或 git(通过 ssh)或 https 协议?

    哪个高效 SSH 或 Git 文件压缩 我对 Git 的理解是 git 协议很智能 因为通信两端都有一个协议代理来压缩文件传输 从而通过有效地使用网络带宽来实现更快的克隆 From 我发现了以下说法 For secure authentic
  • 丢失了我在 GIT 中的提交。你会不小心删除提交吗?

    我正在使用 git gui 但看不到我的分支 我知道我今天检查了一些东西 在完成提交并使用分支查看器验证后 我更改为较早的分支 我对之前的分支进行了更改 然后想返回到当前的分支 但我再也看不到它了 任何帮助都会很棒 回答你的问题 在大多数情
  • 当 .gitattributes 中的 EOL 设置为 CRLF 时,Git diff 认为行结尾为 LF

    当我恢复对带有 Windows 行结尾的文件的更改并且 gitattributes 将 EOL 定义为 CRLF 时 git 认为行结尾已更改为 LR 即使十六进制编辑器显示 CRLF 仅当 gitattributes 定义 EOL 字符时
  • git 提交错误:检测到大文件

    您好 我正在为 ios 8 1 开发一个应用程序 xcode 我已经使用 googleMaps 框架来实现自动完成功能 当我尝试在 Git 中推送我的项目时 我收到大文件检测错误 后来尝试使用 git lfs 并跟踪 git 检测到的文件
  • 如何使用 Git 跟踪目录而不是文件?

    我最近开始使用 Git 但只有一件事遇到了麻烦 如何在不跟踪目录内容的情况下跟踪目录 例如 我正在开发的网站允许上传 我想跟踪上传目录 以便在分支等时创建它 但显然不是其中的文件 在开发分支中的测试文件或主控中的真实文件 在我的 gitig
  • 使当前提交成为 Git 存储库中唯一(初始)提交?

    我目前有一个本地 Git 存储库 我将其推送到 Github 存储库 本地存储库有约 10 次提交 Github 存储库是其同步副本 我想要做的是从本地 Git 存储库中删除所有版本历史记录 以便存储库的当前内容显示为唯一提交 因此存储库中
  • 仅使用 Git grep 的文件名

    我只想查看文本中包含特定单词的不同文件 current directory git grep word 显示文件中具有匹配单词的每一行 所以我尝试了这个 current directory git grep word files with
  • 使用 gitignore 嵌套存储库。

    我想嵌套 2 个 git 存储库 我一直在阅读子模块 有一段时间我认为它很棒 我想我可能想要其他东西 这是我的情况 首先 我想我应该提到我的所有服务器都托管网站 并以 staging domain com 和 domain com 实时 模
  • Eclipse Git 关键字扩展

    每次我检查 git hub 服务器的源代码时 我都需要更新源代码修订关键字 version date 等 你可能知道 Git 中的主要问题是你无法使用以下命令修改文件 提交后有关提交的信息 因为 Git 首先对文件进行校验 基本上我想要实现
  • git 2.32 git push -u origin master 没有任何反应

    I ve starting to use git github and I m stucked on how to push my codes to github I m following some tutorials and when
  • 部分共享git仓库

    我是 git 新手 我想知道是否支持以下场景 如果支持的话如何支持 即用于设置和更新的 git 命令 可以从三个不同的地方获取存储库 本地 镜像 和 github mirror 完全镜像 local github 镜像 local 但 受版
  • git merge 冲突的不同场景

    我试图了解 git 合并后可能发生 git 冲突的情况以及如何避免它们 我创建了一个 git 存储库并向其中添加了一个文本文件 我已将 1 添加到文本文件中并将其提交给 master 我已经从 master 创建了一个新分支 分支 2 并将
  • 如何使用git-svn切换svn分支?

    复制 如何让 git svn 使用特定的 svn 分支作为远程存储库 https stackoverflow com questions 192736 how do i make git svn use a particular svn b
  • Git 工作流程:分叉项目并维护本地修改副本,但保持最新

    我正在尝试找出最佳工作流程 用于维护具有自定义功能的 github 托管项目 moodle 的本地副本 同时保持保持副本最新的能力 告诉我我正在考虑做的事情是否完全疯狂 分叉项目 github com moodle moodle gt gi
  • 删除 Git 存储库,但保留所有文件

    在我使用 Linux 的过程中的某个时刻 我决定将我的主目录中的所有内容都放入源代码管理中是个好主意 我不是在问这是否是一个好主意 我是在问如何撤销它 删除存储库的原因是我最近安装了 Oh My Zsh 而且我非常喜欢它 问题是我的主目录有
  • Git - 远程:错误:无法运行钩子/后接收:没有这样的文件或目录

    我收到错误 remote error cannot run hooks post receive No such file or directory 当尝试推送到远程时 接收后文件存在于正确的位置 testnew git hooks 并包含
  • GIT:提交时“致命:无法写入 new_index 文件”

    当我尝试将更改提交到本地存储库时 我收到以下消息 致命 无法写入 new index 文件 As this 线程说明 http luhman org blog 2010 04 05 git fatal unable write newind

随机推荐

  • 如何修复信号器的 ChunkLoadError

    我在本地运行我的 nx 站点时遇到问题 任何使用 signalR 的联合应用程序都开始抛出 ChunkLoadError 我尝试过更改 signalR 的版本 重新加载 清除缓存并单独运行我的联合应用程序 结果总是一样的 Uncaught
  • 如何找到 Discord 机器人所连接的语音聊天

    我正在制作一个通过语音识别激活的不和谐机器人 我一开始就让他加入语音频道 正在运行 我试图发出命令让他离开 const commando require discord js commando class LeaveChannelComma
  • 如何解决2+2和2++2冲突

    在更大的程序中 我给出了以下内容 flex bison In flex pn dig 0 9 exp e E dig printf detected n return PLUS SIGN pn dig printf digit detect
  • 从 Console.ReadLine 输入检索数据类型

    我对编程还很陌生 我遇到了挑战 但我需要你的帮助 我的任务是编写一个程序 从控制台读取一些内容 然后如果它的数字它会打印 1 如果它的字符串它看起来像这样 string 这是我的代码 但有问题 我无法弄清楚 必须使用 Switch Case
  • DBD::Oracle 安装导致错误

    我想通过 Perl 连接到 Oracle 数据库 为此 我尝试使用以下命令从 CPAN 安装 DBD Oracle root localhost Admin cpan DBD Oracle 在我的 Linux 终端上运行上述命令时 出现以下
  • 授予 bjyauthorize 从 CLI 运行 ZF2 mvc 应用程序的权限

    我在 ZF2 上有一个完全运行的 mvc 应用程序 我想从命令行运行一些操作 我已经正确设置了控制台路由和其他环境 当我从 CLI 运行我的应用程序时 出现权限被拒绝的异常 如下所示 You are not authorized to ac
  • 从源代码编译 Ruby 1.8.7 时出错:math.c:37: 错误:标记“(”之前缺少二元运算符

    这真的很奇怪 josh josh wget ftp ftp ruby lang org pub ruby 1 8 ruby 1 8 7 tar bz2 josh josh tar xvjf ruby 1 8 7 tar bz2 josh j
  • Xcode Autolayout - 约束等于另一个约束

    我终于尝试在 IB 中采用自动布局 但在为某些对象设置约束时遇到问题 我基本上希望 5 个视图在整个超级视图中垂直均匀分布 我有 3 个按钮 由 2 行分隔 我希望间距 D1 D2 D3 和 D4 相等WITHOUT调整任何东西的高度 在I
  • Laravel 4 + AJAX 不工作

    我对 Laravel 4 很陌生 我正在尝试测试 AJAX 请求 In my script js我有这个 function login submit click function e e preventDefault return ajax
  • Ruby 模型的数组属性

    是否可以为数组类创建一个属性 我尝试阅读this https stackoverflow com questions 3438827 ruby model with an array as an attribute但我并没有从中得到太多 我
  • 无法在真实设备上的 iOS 10 上运行 Appium 测试

    自从将我的设备和 xCode 更新到 iOS 10 和 Xcode 8 以来 我一直无法在真实设备上成功设置 Appium 测试 不过 我在模拟器上运行得很好 以下是我的功能设置 DesiredCapabilities cap new De
  • Rails 表单动态添加字段

    我正在尝试设置一组字段以根据需要动态显示 在模型中 我有以下字段 attr accessible instruct1 instruct2 instruct30 我希望表单只显示 instruct1 并带有一个按钮来添加 1 个字段 直到击中
  • 在 Apex 类中引用远程站点设置 URL?

    我有一个 webservice 类 它将位于托管包中并分发给多个客户端 该类当前有一个变量 其中包含它所访问的服务器的硬编码值 问题 每个客户端的服务器都不同 因此硬编码值不起作用 我认为由于每个客户端都必须将其服务器添加到其远程站点设置中
  • 如何比较 MySQL 数据库模式 [关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我正在寻找一个可以让我比较 MySQL 数据库模式的工具 哪个是最好的工具来做到这一点 Navicat 能够为您做到这一点 它还将同步两个 mysql
  • AES加密/解密

    以下是一些适用于字符串的代码 Public Function AESEncrypt ByVal PlainText As String ByVal Password As String ByVal salt As String Dim Ha
  • 如何在“git Push”之后在本地和远程撤消“git commit”

    我已经表演过git commit随后是一个git push 如何在本地和远程存储库上恢复该更改 git log commit 364705c23011b0fc6a7ca2d80c86cef4a7c4db7ac8 Author Michael
  • 开源 Twitter 克隆(在 Ruby/Python 中)[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何用 Ruby 或 Python 编写的生产就绪的开源 Twitter 克隆 我对功能丰富的实现
  • 如何备份 Django 数据库

    我有一个使用 Postgres 数据库的 Django 应用程序 我需要能够备份和恢复数据库 既确保没有数据丢失 又能够在测试期间将数据从生产服务器复制到开发服务器 似乎有几种不同的方法可以做到这一点 只需直接与数据库交互即可 因此 对于
  • CKEditor 如何在取消帖子时删除服务器中的图像文件

    我正在使用nodeJS 后端 react 前端 mongoDB 我安装了 CKEditor5 以便在船上发布许多图像 它可以完美地在我的服务器文件夹上上传图像CKfinder But 如果有人停止发布上传的图像 无用的图像将保留在我的服务器
  • 警告:远程 HEAD 引用不存在的引用,无法结帐

    由于不同原因 这似乎是一个常见的错误 我有一个简单的裸 git 存储库 名为 kiflea git 我像这样克隆它 git clone git kipdola be kiflea git 然后 git 告诉我 warning remote