如何使用 refs/remotes 中的所有分支和标签克隆 git 存储库?

2024-03-20

我有一个从 svn 存储库创建的本地 git 存储库:

$ git svn clone -s svn:...

然后我创建了一个备份遥控器并将所有内容推送到其中:

$ git remote add backup git@myhost:mybackup.git
$ git push --mirror backup

现在,当我尝试从备份克隆时,它丢失了所有 svn 标签和分支。

$ git clone git@myhost:mybackup.git
$ cd mybackup
$ git branch -a
* master
  origin
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

如何克隆包含所有标签和分支的存储库?

我发现的唯一方法是镜像存储库:

$ git clone --mirror git@myhost:mybackup.git

这会创建一个本地mybackup.git目录,它知道所有标签/分支(我可以使用制表符完成来获取整个列表),但它不是一个有效的可用存储库:

$ git checkout mytag
fatal: This operation must be run in a work tree

必须有命令行选项才能真正克隆具有所有分支/标签的存储库???

我在这里找到了几个相关的问题,但没有一个答案适用于这种情况。我认为区别在于我的克隆是用--mirror?


有两种方法可以提高你的指挥能力git clone --mirror git@myhost:mybackup.git我发现的是这个,知道你的命令创建了一个 mybackup.git 目录:

mkdir mybackup
mv mybackup.git mybackup/.git
cd mybackup
git init

在那里,您有一个完整的工作目录。

或者,您可以在此页面上阅读:https://git.wiki.kernel.org/index.php/Git_FAQ#How_do_I_clone_a_repository_with_all_remotely_tracked_branches.3F https://git.wiki.kernel.org/index.php/Git_FAQ#How_do_I_clone_a_repository_with_all_remotely_tracked_branches.3F

git clone --mirror git@myhost:mybackup.git mybackup/.git
cd mybackup
git config --bool core.bare false

我认为直到最后一行都是等效的,并且可能是命令git config --bool core.bare false比做一个更干净git init.

这一切都归结为这样一个事实:--mirror 创建了一个裸存储库而不是一个工作存储库,因此您需要将其转换为工作存储库。

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

如何使用 refs/remotes 中的所有分支和标签克隆 git 存储库? 的相关文章

  • Git:man 命令不起作用

    在 Git Bash 中 他们给了我一个error用于返回 man command man git bash man command not found 我的 Git 版本 git version git version 2 18 0 wi
  • Hudson 结帐卡在“git fetch”处

    我正在使用 git 版本 1 6 2 2 1669 g7eaf8 在 Hudson 1 314 上使用 Hudson Git 插件 0 7 3 当我触发构建时 Hudson 执行 git fetch 但它永远不会返回 我把一只卡在那里14天
  • git 提交消息的 vim 语法高亮显示 - 自定义 commentchar

    如上所述在这个答案中 https stackoverflow com a 14931661 835945 从 Git 1 8 2 开始你可以使用core commentchar配置值将提交消息注释更改为默认值以外的其他内容 哈希标记或哈希符
  • 如何在 git diff 中按标点符号拆分单词?

    我对以下命令有一些运气 git diff color words lt gt space lt gt 但它似乎没有在第一个字符类中正确地否定方括号 我试过这个 git diff color words lt gt space lt gt 为
  • GIT 中的重复合并。它如何计算差异?

    我一直在做一项研究 试图了解 GIT 合并是如何工作的 我知道有几种合并类型 如递归 章鱼等 我发现解析 递归是最常用的 并且递归合并仅在存在多个共同祖先 基础时才有用 但是 我找不到从分支重复合并到主节点时使用哪种算法 或者如何计算祖先
  • 使用 Git 的 Spring Cloud 配置服务器 - 无法克隆或签出存储库连接超时

    我正在使用 GIT 在 Spring Cloud Config Server 上进行 POC Spring Boot 1 5 3 RELEASE 爪哇1 8 弹簧工具套件https github com kishornpatil https
  • 克隆存储库而不将其设为原始远程存储库

    我正在从一台将被擦除的计算机上克隆一个 git 存储库 是否可以在不创建原始存储库的情况下克隆存储库origin master 或者我是否需要克隆它 然后删除远程分支 这是通过git remote rm origin Edit 存储库只有一
  • 如何重命名 GitHub 网站上的目录/文件夹?

    我在 GitHub 网站上找到了一种方法rename https github com blog 1436 moving and renaming files on github一个文件并成功完成 我也找到了一种方法rename https
  • 警告:您的 git 版本是 1.9.3。存在严重的安全漏洞

    我在部署到 Heroku 期间收到有关 git 1 9 3 严重安全漏洞的警告 我尝试通过 homebrew 更新 git 但发现 git 最初并不是通过 homebrew 安装的 然后我通过自制程序安装了它 brew update bre
  • GitHub API:标记提交所属(与 git describe --tag 并行)

    我正在使用 GitHub API 进行实验octokit https github com octokit octokit rb红宝石 我的目标是能够提取提交 SHA 所属的 标签 现在我可以使用命令行轻松地执行此操作 gt git des
  • git subtree pull -P 不管 总是合并冲突

    问题 即使我没有进行任何更改 每次尝试拉入子树时 我都会遇到合并冲突 我在做什么 In 子树仓库 Make some changes git commit am Changes made git push origin master In
  • 如何修复树与树之间的 Git 错误断开链接?

    我的事务被中断 当我再次尝试时 我遇到了空或损坏的对象错误 在另一个问题之后 我删除了所有空文件 当我运行时 git fsck full 我收到这个错误 Checking object directories 100 256 256 don
  • git 可以与 Xcode 集成吗?

    有没有办法将 git 存储库与 Xcode 内置的 SCM 功能一起使用 Xcode 4 原生支持 git WWDC 2010 上的开发者工具国情咨文演讲 在这里了解更多 Xcode 4 中的新增功能 http developer appl
  • 使用 TFS 个人访问令牌克隆 Git 存储库

    我正在尝试以编程方式克隆 git 存储库 我的 ASP NET MVC 应用程序正在创建并启动一个进程 处理进程的代码工作正常 但是当尝试使用本地 TFS PAT 克隆 git 存储库时 身份验证失败 我无法使用 NTLM 或要求用户输入凭
  • Git 无效的修订范围 Symfony2 Composer 外部包

    RuntimeException Failed to execute git log 18efcf67d236d5bbf46ac67820250dffd0474b6e 94e2146f525fa1367e15646fa273e5b34f92
  • Git 不断提示我输入密码

    我已经使用 Git 一段时间了 但是不断要求输入密码开始让我感到厌烦 我使用的是 Mac OS X 和 GitHub 并且按照 GitHub 的说明设置了 Git 和我的 SSH 密钥设置 Git 页面 http help github c
  • refname 不明确且拉取失败

    我运行了以下命令 因为我想将生产分支移回而不必先签出 git branch f production HEAD 1 现在 当我检查生产时 我收到以下警告 warning refname production is ambiguous 然后我
  • 分支明显不同,但提交历史是相同的

    git status告诉我我的分支和我在另一个存储库上开始的分支已经分歧 On branch master Your branch and origin master have diverged and have 13 and 13 dif
  • 代表 Git 存储库的数学结构是什么

    我正在学习 Git 如果我能描述一下代表 Git 存储库的数学结构 那就太好了 例如 它是一个有向无环图 它的节点代表提交 它的节点有代表分支等的标签 每个节点最多一个标签 没有标签使用两次 我知道这个描述不正确 我只是想解释我正在寻找的内
  • git diff - 只显示哪些目录发生了变化

    有没有办法只列出已更改的目录 如果我在 git root 的话 project 我更改的文件是 project subtool file1 project subtool file2 project subtool3 file1 我只是想

随机推荐

  • 组合枚举 C++

    在我的项目中 我有几个与此类似的枚举声明 enum Comparison LT lt GT gt EQ LTEQ lt GTEQ gt NEQ enum Arithmetic ADD SUB MUL DIV MOD 我想将其中的几个组合成一
  • 如何注入 jQuery 并在同一个书签中使用它?

    我可以使用以下书签成功地将 jQuery 注入到页面中 javascript void function doc if typeof jQuery undefined var script jQuery document createEle
  • Scala/Java 枚举

    我读了this https stackoverflow com questions 1321745 scala doesnt have enums what to use instead of an enum and this https
  • 将 Matplotlib 图转换为 NumPy 数组,没有任何边框/框架或轴

    我正在尝试将 Python 生成的图像与文件中的图像 照片进行比较 到目前为止 最好的方法是在 Matplotlib 中生成一个图形 然后将其转换为 numpy 数组 并将这些值与我从图像中获得的值进行比较 我得到了以下代码 将 Matpl
  • 对不完整类型的引用

    根据 C 03 标准 引用不完整类型是否有效 我不知道有任何实现将引用实现为非空指针以外的任何其他实现 因此这样的代码应该可以工作 但是 我想知道对不完整类型的引用是否符合标准 我希望得到带有引用和 C 标准参考的答案 据我所知 C 标准没
  • jQuery 下一个有特殊类型子元素的兄弟

    我的 HTML 有一个包含许多同级元素的容器元素div元素 每个元素包含一个contenteditable p 这些兄弟姐妹div然而 被其他人 打断 div其中不包含可编辑元素 目前对我来说挑战的是如何 跳过 这些干扰div使用左右箭头键
  • 如何使用单个删除从对象中删除多个属性?

    我有以下对象 var myArr one 1 two 2 three 3 four 4 five 5 我想立即从该对象中删除三个属性 例如 delete myArr one three five 但它正在失败 我是否必须对每个属性执行独立删
  • 获取创建的表名

    我正在尝试创建一个event trigger 每当表已创建 当发生这种情况时 我想插入到一个表中 该表有 2 列id and tablename 创建的表的名称 阅读文档我无法找到如何获取表名 到目前为止我有这个 CREATE OR REP
  • 使用facet_grid将“标题”添加到我的因素中

    我想使用 ggplot2 为我的因素添加文本 标题 例如 对于来自 reshape2 库的数据 library reshape2 library ggplot2 ggplot tips aes x total bill y tip tota
  • 如何将Java时间戳转换为ms access Date?

    我想将 java 时间戳插入到 msaccess 数据库中 但收到下面列出的错误 ms access 字段已设置为 DATE 数据类型 任何建议将不胜感激 谢谢 这是我的 DAO 类方法 public void addSale String
  • 将用户定义的表传递给存储过程

    我有一个用户定义表 我正在将其从存储过程中传递到存储过程中 DECLARE tmpInput MyTableType Table is populated from an INPUT XML exec ValidateInputXML SE
  • 向下滚动时标题会发生变化(jQuery)

    TechCrunch 最近重新设计了他们的网站 他们有一个可爱的标题 当你向下滚动时 它会缩小为更薄的品牌版本 你可以在这里明白我的意思 http techcrunch com http techcrunch com 我将如何创建这样的东西
  • 如何将原始二进制数据转换为 blob 并将其显示在 img 标记中?

    我正在 Electron 和 Svelte 中制作梦想日记应用程序 我有一种自定义文件格式 其中包含标题 描述和一张或多张图像 看 程序输入 文件输出 当我需要的时候 我可以打电话ipcRenderer invoke 在主进程中读取文件 然
  • 通过 REST API Java 从 URL 获取 ObjectID

    我尝试将讨论添加到用户故事中 部分代码 QueryResponse storyQueryResponse restApi query storyRequest JsonObject storyJsonObject storyQueryRes
  • 如何在 matplotlib 等高线图中设置虚线长度

    我正在 matplotlib 中制作一些等高线图 但破折号的长度太长 虚线也不好看 我想手动设置破折号的长度 当我使用 plt plot 制作简单的绘图时 我可以设置精确的破折号长度 但是我无法弄清楚如何使用等高线图做同样的事情 我认为以下
  • 如何处理 Google Play 中的待处理购买

    我们的大多数购买在 3 天 30 分钟后不断被取消 我认为这是待购买状态的结果 然而 关于如何准确处理待处理购买的文档却很少 而且 由于某种原因 即使我自己是测试人员 我也无法测试它 因为购买方式上没有 慢卡 选项 此外 我们没有后端服务器
  • C# 将行添加到具有自动增量列的数据表

    我有一个数据表 其中包含 A B C 列 我已将 A 列的 is Identity 属性设置为 true 但现在无法向表中添加任何行 我正在尝试的代码是这样的 dsA dtA row dsA dtA NewdtARow row B 1 ro
  • JavaScript 超时 - 规范 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 这不仅仅是一个问题 它是一个确保Ja
  • 为什么 git revert 会抱怨缺少 -m 选项?

    所以我正在和其他人一起开发一个项目 并且有多个 github 分支正在开发中 有人刚刚修复了一个问题 我与他的分支合并 但后来我意识到我可以找到更好的解决方案 我想恢复我刚刚所做的提交 我尝试这样做git revert HEAD但它给了我这
  • 如何使用 refs/remotes 中的所有分支和标签克隆 git 存储库?

    我有一个从 svn 存储库创建的本地 git 存储库 git svn clone s svn 然后我创建了一个备份遥控器并将所有内容推送到其中 git remote add backup git myhost mybackup git gi