【发布时间】:2022-01-15 13:53:37
【问题描述】:
我有一个 Gitlab 存储库,它有一个非常大的主分支。我只想在 repo 中使用一个文件夹,所以我创建了一个分支并删除了我想要使用的文件夹以外的所有内容。然后,我使用部署令牌(具有完全权限)和分支标志克隆了分支以指定分支:
git clone --branch my_branch https://oauth2:[MY_TOKEN]@gitlab.com/my-repo.git ./save_location
这很好,我完全没有克隆 repo 的问题。如果我想获取推送到 master 分支的文件夹的任何更新,我可以将 master 拉到我的分支中,并设置 -X theirs 标志。我检查了 git 文档,当使用分支标志集进行克隆时,repo 仍然跟踪所有其他分支,所以这个 pull 仍然按预期工作。所以这里是命令:
git pull origin master -s recursive -X theirs
这似乎很简单,但尝试拉取会出现此错误:
* branch master -> FETCH_HEAD
Committer identity unknown
*** Please tell me who you are.
Run
git config --global user.email "you@example.com"
git config --global user.name "Your Name"
to set your account's default identity.
如果我使用部署令牌来访问存储库,并且令牌具有完全权限,那么为什么仍然要求我提供身份?如何在不配置身份的情况下解决此问题?我想确保这是一个完全不露面的系统,不依赖于帐户。
【问题讨论】:
-
Committer identity unknown你使用公共 gitlab 还是私有实例?如果是后者,您应该联系管理员... -
@KamilCuk 私有实例。我可以联系管理员,但我想我知道可能是什么解决方案。可能只需要配置一个电子邮件和名称,以便 git 至少可以跟踪提交的一些来源......