gpt4 book ai didi

git - 创建 git 存储库的稀疏和浅层克​​隆导致错误 : trying to write non-commit object

转载 作者:行者123 更新时间:2023-12-04 03:05:16 24 4
gpt4 key购买 nike

我想在某个标签上创建一个 git 存储库的稀疏和浅层克​​隆。

这就是我目前正在做的事情:

git init avatica-tmp

cd avatica-tmp

git remote add origin https://github.com/apache/calcite-avatica/

git config core.sparsecheckout true

echo "core/src/main/protobuf/*" >> .git/info/sparse-checkout

git pull --depth=1 origin rel/avatica-1.10.0

它工作正常,但抛出错误:
remote: Counting objects: 531, done.
remote: Compressing objects: 100% (381/381), done.
remote: Total 531 (delta 147), reused 280 (delta 51), pack-reused 0
Receiving objects: 100% (531/531), 963.03 KiB | 233.00 KiB/s, done.
Resolving deltas: 100% (147/147), done.
From https://github.com/apache/calcite-avatica
* tag rel/avatica-1.10.0 -> FETCH_HEAD
fatal: update_ref failed for ref 'HEAD': cannot update ref 'refs/heads/master': trying to write non-commit object fe4f0b4ea3e2ee4f3b2e82329363a7945493a8c9 to branch 'refs/heads/master'

我在 Ubuntu 17.04 上使用 Git 2.11.0 和在 Windows 10 64 位上使用 Git 2.13.2.windows.1 时遇到此错误。我没有尝试克隆到映射驱动器。

是什么导致了这个错误,我该如何避免它?

最佳答案

您正在尝试使用空存储库中的浅克隆将带注释的标签 pull 到当前分支中,我想这是问题所在,因为它试图设置您的本地 master分支指向标签,而 git 不喜欢它。

一个解决方案是使用 fetch 然后 check out fetched 标签:

git fetch --depth=1 origin rel/avatica-1.10.0
git checkout FETCH_HEAD

关于git - 创建 git 存储库的稀疏和浅层克​​隆导致错误 : trying to write non-commit object,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45161543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com