git bundle创建重复引用

时间:2017-09-27 05:18:59

标签: git bundle

我正在尝试使用git bundle来创建本地存储库的备份。我正在运行以下命令在源计算机上创建捆绑包。

git bundle create myback.bundle mybranch --all

我正在使用all参数,因为我想备份源计算机上的所有分支。

当我在备份计算机上验证此捆绑包时,我看到重复的refs似乎阻止我从捆绑包中克隆。请参阅下面的“mybranch”重复。

  

5e6e24e00edb98e5c12af39ef9ed895106600d69 refs / heads / mybranch   5e6e24e00edb98e5c12af39ef9ed895106600d69 refs / heads / mybranch   d97386c728189eed6acbd39ca4385e1c75c5ff22 refs / heads / otherbranch   6d81c25f0fc2e59303d66340d5b56141de20a6cf refs / heads / br3   e7fdaff9c298784dc19f3f42922541f2b8eb81f0 refs / heads / master   7deee21ec20e7e57183e362a49895022df4acdab refs / heads / br4   ec11a354241c61a71ca922f41118e3e83f911e28 refs / remotes / origin / br1   970e3949edbe7a7846e3d80e9633b3f1a4e40bc6 refs / remotes / origin / mybranch   e7fdaff9c298784dc19f3f42922541f2b8eb81f0 refs / remotes / origin / br4

在源计算机上,运行

时我没有看到这些重复的引用
  

git show-ref

知道这个重复的引用是如何进入捆绑包的吗?

1 个答案:

答案 0 :(得分:1)

--all参数获取包括mybranch在内的所有分支,因此通过指定分支,您要求git bundle将其包含两次。我尝试从命令行中删除mybranch并获得所有分支,包括mybranch,没有重复。

在我自己的测试中(Linux上的Git 2.4.0),重复的ref只会在克隆bundle时发出警告。我想知道为什么它会给你造成实际的失败。无论如何,我希望只使用--all来解决您的问题。