我想在teamcity构建配置步骤中通过命令行脚本执行以下操作:
git rebase master
git push origin <branchname>:<remotebranchname>
在这种情况下,它不会在teamcity代理上创建特定的分支,因此不能确定分支名称是什么。但是只是运行
git push
引发以下异常:
***请告诉我你是谁。 运行
git config --global user.email“ you@example.com” git config --global user.name“您的名字” 设置您帐户的默认身份。 省略--global仅在此存储库中设置身份。
致命:无法自动检测电子邮件地址(获取了'root @ teamcity-xxxxxx(none)')
主机密钥验证失败。 致命:无法从远程存储库读取。 请确保您具有正确的访问权限,并且存储库存在。 进程退出,代码为128 进程退出,代码为128(步骤:命令行) 步骤命令行失败
答案 0 :(得分:1)
Git推送不起作用,因为它需要与Git关联的sshkey。在上面的示例中,我之所以苦苦挣扎,是因为我没有一种方法来关联它的按键以使push命令起作用。
在teamcity中,有一个名为“ SSH代理”的构建功能,然后选择要与其关联的sshkey,以进行推送命令。添加完之后,git push命令开始工作。
此功能在构建配置->构建功能->添加构建功能->选择“ SSH代理”并选择上载的密钥时可用。这是已经在teamcity中上传的内容。