为什么git bundle在github action中不起作用?

xoshrz7s  于 2023-02-28  发布在  Git
关注(0)|答案(1)|浏览(163)

我有一个github操作工作流,我想把我的仓库捆绑到一个git包中,然后把它包含在一个github版本中。
绑定是使用命令完成的,

git bundle create my-bundle.bundle --all

bundle创建正确,但从发布页面下载时,bundle无法解包,而是出现以下错误:

git clone .\my-bundle.bundle
Cloning into 'my-bundle'...
Receiving objects: 100% (294/294), 138.15 KiB | 19.73 MiB/s, done.
Resolving deltas: 100% (26/26), done.
error: Could not read 53c23e17ab345ff12fd711ae4e8ce49d941fef7a
fatal: Failed to traverse parents of commit 110f058db5ba201d81669b4245709a9b18a813bd
fatal: remote did not send all necessary objects

我希望git clone .\my-bundle.bundle创建一个名为my-bundle的目录,其中包含整个git仓库历史记录。
我已经验证了我的电脑使用的是最新的git版本(工作流也使用相同的版本,2.39.2)。

3j86kqsm

3j86kqsm1#

默认情况下,GitHub Actions会执行一个浅层克隆,其中包含了一个提交的数据。这比克隆整个repo要快得多,而且在服务器端也更便宜。
如果你不需要历史记录,那么这是一个全面的胜利。然而,如果你确实需要历史记录,比如在这个例子中,那么你需要这样表示:

- uses: actions/checkout@v3
  with:
    fetch-depth: 0

相关问题