我在server-1 / repo1上托管了一个third_party项目 . 这个third_party项目在repo2 cmake(真实项目)中作为ExternalProject添加 . repo2是我们的工作 . 我们的构建环境基于docker . 在Docker中,我能够按照repo2 cmake中ExternalProject的配置克隆repo1 . 但是外部项目的git pull又名“UpdateCommand”失败了 . 它失败了,因为我没有在docker中设置git“user.name”和“user.email” . 根据我的想法,我不需要在docker里面为third_party repo使用git“user.name”等配置 .
git fetch在docker中运行 . git pull将添加合并提交,这可能就是为什么它需要git“user.name”等 . 为了避免这种情况,我尝试过
git pull --no-commit,
但仍然陷入这个问题 .
有人有洞察力吗? Docker中用户的“用户名”是“用户”,并且没有用于docker用户“User”的电子邮件 .
git pull
上的错误:
请告诉我你是谁 . 运行git config --global user.email“you@example.com”git config --global user.name“Your Name”设置帐户的默认标识 . 省略--global仅在此存储库中设置标识 . 致命的:空的身份名称(for)不允许
1 回答
为了提交,您必须提供
name and email ID
只是为了将此信息附加到提交以供以后使用 .您首先运行这些命令:
John Doe就是一个例子 . 你必须提供你的名字 . 然后运行:
这里的电子邮件ID应该是您的ID . 然后尝试使用您的命令 .
这里
--global
是可选的 . 但是,如果传递--global
选项,则只需执行一次此操作 .