问题标签 [git-bundle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1245 浏览

git - 如何归档使用 LFS 的 git 存储库?

我正在寻找将 git 存储库存档到客户端的常规文件服务器。

以前我曾经git bundle create [path] --all 这样做过,而且效果很好。

但是,此存储库使用 Git LFS,并且 LFS 文件不包含在使用上述命令创建的包中。

  1. 如何轻松导出存储库的所有提交、分支和历史记录,包括 LFS 文件?
  2. LFS 有可能吗?
0 投票
2 回答
2218 浏览

git - git bundle:本地和远程仓库之间的双向所有分支同步

机器 A 有 Internet 连接,而机器 B 没有。两者都有本地存储库,机器 A 可以与 Github 交互。开发在两台机器上进行。git-bundle 用于使存储库保持同步。

通常的同步流程:

  1. 创建 B 中所有分支的捆绑包并将捆绑包转移到 A。

  2. 在 A 上克隆 github 存储库。将 bundle 中的所有分支拉到从 github 克隆的存储库中。将更新的存储库(所有分支)推送到 github。

  3. 从 github 存储库创建所有分支的捆绑包。将捆绑包转移到 B。将捆绑包中的所有分支拉入 B 上的存储库。

有一种方法可以创建存储库所有分支的捆绑包。但是有没有办法一次将包的所有分支拉到本地存储库中?

在单分支存储库的情况下,双向同步似乎是直截了当的。

0 投票
1 回答
36 浏览

git - `git bundle` 是否适合制作备份副本?

我想要一种简单的方法来备份我的 git 存储库,所以我正在考虑git bundle.

我目前无法确认我可以恢复依赖*.bundle文件的捆绑分支的全部内容。我很困惑,因为我注意到谈论“增量”被保存,也许不是其他内容。

有人可以确认这git bundle是备份项目的合适方法,即不会丢失任何工作。

谢谢,

G

0 投票
2 回答
678 浏览

git - 尝试创建介于 2 次提交之间的 git 包时出错

我正在尝试创建一个从提交 x 到提交 y 的捆绑文件。正如git bundle 的文档中所指定的那样,参数必须是“ git rev-parse 和 git rev-list ... 可接受的,它指定了特定的对象和对传输的引用”但是,当我运行以下命令时:

git bundle create test.bundle 15b423..6cffeab

我得到错误

error: Refusing to create empty bundle.

然后我验证了提交可以被 rev-list 和 rev-parse 引用:

为什么它不起作用?如何创建从提交A到提交B的捆绑文件?

0 投票
1 回答
6686 浏览

git - 如何解开一个 git 包?

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

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

和裁判/负责人/大师

0 投票
1 回答
633 浏览

git - git bundle 隐藏代码

我有一组特定的代码隐藏在 git 中,并且想将其捆绑起来,以便将其传输到单独 PC 上的不同克隆,但我还没有弄清楚如何在 bundle 命令中引用存储。

我努力了:

但得到以下错误:

我可以确认 stash@{1} 不为空。bundle 命令不支持存储吗?有可能做我想做的事吗?

0 投票
1 回答
439 浏览

git - 跟踪文件但从 git 包中排除它们

我有一个有点复杂的 ansible 工作流程。我有两个气隙网络。我在两个网络上开发剧本,所以我有两个由 git 管理的有点独立的 ansible 存储库。同时,大部分剧本都可以在这两个地方使用。更复杂的是,这是一种单向转移。我可以从网络 A 转移到 B,但不能从 B 转移到 A。

我有模板文件,其中包含与一个网络相关但与另一个网络无关的信息。我已经设计了它,以便文件名应该相同(以及 Jinja2 模板中的变量名)。我希望能够创建一个排除文件的 git 包,这样当我从其他网络存储库上的包中提取时,文件不会被覆盖。因为在模板文件中包含错误信息可能会破坏整个环境,所以我需要在 Git 中跟踪 Jinja2 模板/变量文件。

除了使用 .gitignore (因为需要跟踪文件以便我可以在紧急情况下回滚)之外,是否有人有工作流建议或 git 命令可以帮助我完成此任务?

0 投票
1 回答
151 浏览

git - 通过 http(s) 克隆 git 包

是否可以通过 http 克隆 git bundle?当我尝试这样做时,我得到了:

这样做的原因是为了避免压缩服务器上的存储库(仅提供文件),我们受限于git clone用户的应用程序

0 投票
2 回答
401 浏览

git - 拆分 git 包文件

有什么方法可以拆分 git bundle 文件?比如说,repo.bundle1 和 repo.bundle2,每个都包含一半的 repo。便携式捆绑包太大,无法传输。

假设不能更改允许传输的最大大小,我还能如何处理这个问题。

0 投票
1 回答
542 浏览

git - 使用 git bundle 同步气隙存储库

我遇到了一个问题,我想同步 2 个未通过网络连接的存储库。我已经使用 git bundle 在两者之间进行同步,但遇到了一个极端情况。

我正在通过以下方式创建 git 包:

<timestamp of lastBundle>lastBundle标签关联的提交时间中选择的位置。这允许我只捆绑增量并在所有分支中获取所有新提交。

极端情况是发生这种特殊情况时

lastBundle已同步,并且对应于气隙 repo 的最新引用,但有人c2在时间上比c3他们自己的本地 repo 副本更早地提交,并且没有立即推送对 origin 的引用。因此,下次我捆绑每个提交lastBundle并将其放在驱动器上,将其加载到另一台机器上时,它无法验证,因为c2它不在捆绑包中,只有它合并到主控。

我已经查看了git merge-base是否可以找到一个共同的祖先,并使用它来代替。虽然这可以完成这项工作,但我认为我需要lastBundle为每个分支添加一个标签才能使其工作,因为这种情况可能同时发生在 0、1 个或更多分支上。这似乎不是最优的。

理想情况下,我想我希望能够git bundle verify <mybundle>针对 git 历史记录中的给定位置执行操作,而不是针对整个存储库。这样,我可以在将其放入磁盘之前验证它是否会失败,并且只需更改捆绑时提交的回溯时间。除非我尝试做的事情有其他方法。

有任何想法吗?