6

我刚刚通过电子邮件收到了一个 Git 包。我如何解开它以便阅读它?我在使用 unbundle 命令时遇到问题。我努力了

git unbundle *bundle name* 

但这给了我一个奇怪的代码

eae0b00697e53cd87c871143051673f3ee413148  

和裁判/负责人/大师

4

1 回答 1

11

我在使用 unbundle 命令时遇到问题。

您根本不应该运行此命令。

我刚刚通过电子邮件收到了一个 Git 包。我如何解开它以便阅读它?

这在文档git bundle有所描述:

例子

假设您要将历史记录从机器 A 上的存储库 R1 传输到机器 B 上的另一个存储库 R2。无论出于何种原因,A 和 B 之间的直接连接是不允许的,但我们可以通过某种机制(CD)将数据从 A 移动到 B 、电子邮件等)。我们想用在 R1 中的分支 master 上进行的开发来更新 R2。

要引导该过程,您可以首先创建一个没有任何基础的捆绑包。您可以使用标签来记住您上次处理的提交,以便以后使用增量包轻松更新其他存储库:

machineA$ cd R1
machineA$ git bundle create file.bundle master
machineA$ git tag -f lastR2bundle master

然后将 file.bundle 传输到目标机器 B。由于此包不需要提取任何现有对象,因此您可以通过克隆机器 B 在机器 B 上创建一个新存储库:

machineB$ git clone -b master /home/me/tmp/file.bundle R2

这将在生成的存储库中定义一个名为“origin”的远程,允许您从包中获取和拉取。R2 中的 $GIT_DIR/config 文件将包含如下条目:

[remote "origin"]
    url = /home/me/tmp/file.bundle
    fetch = refs/heads/*:refs/remotes/origin/*

有关其余说明,请参阅文档的其余部分。请注意,在此示例中是“机器 B”;机器 A 上的其他人已经完成了前几个步骤。(他们做得对吗?我不知道;你呢?)

于 2017-03-16T19:16:08.557 回答