我有应用程序服务器,我使用Chef +一些特别的bash脚本引导在一起。问题是,当我想在这些应用服务器上运行更新时,我得到:

19:00:28: *** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

我真的需要在每次更新应用服务器时设置简单的git pull origin master吗?是否有任何方法来覆盖这种行为,以便在没有设置姓名和电子邮件时不会出错?


当前回答

我也遇到了同样的问题,通过添加默认名称和电子邮件存储库设置解决了这个问题。

正如多伦所建议的——

如果您正在使用sourcetree: Repository -> Repository Settings -> Advanced ->取消勾选“使用全局用户设置”框。

添加默认用户名和邮箱地址。

其他回答

我犯了个错误 我在本地设置了响应。对于回购

git config --local user.email "AppServer@your_domain.something"
#git config --local ...
git stash
#optionally unset to minimize risk of fake user commits ...
#esp if someone other than you uses the repo too
git config --local --unset user.email
#git config --local --unset ...

我没有git拉的错误,所以我不能测试这是否会有帮助,然后

另请参阅

git配置的优先级是什么?

我的Git配置中的设置是从哪里来的?

无法自动检测电子邮件地址。

默认情况下,它采用您的系统用户名,如abc@xyz.none。

所以你需要像下面这样设置你的邮箱:

git config user.email "someone@gmail.com"

设置email后,你可以运行git命令并提交你的更改。

git init Git add * Git commit -m "some init msg"

更新引导过程以创建${HOME}/。使用适当的内容,或者从某个地方复制一个现有的Gitconfig。

我也遇到了同样的问题,通过添加默认名称和电子邮件存储库设置解决了这个问题。

正如多伦所建议的——

如果您正在使用sourcetree: Repository -> Repository Settings -> Advanced ->取消勾选“使用全局用户设置”框。

添加默认用户名和邮箱地址。

我使用Jenkins,在尝试执行释放(需要git提交)时遇到了这个问题。为了解决这个问题,我需要添加一个自定义用户名/电子邮件地址(见图),这确保当代码签出时,它在执行发布时使用我的构建用户名/电子邮件地址。注意,此配置可从Jenkins Multibranch Pipeline项目配置中获得。