hudson + git致命:无法应用标签

tak*_*hin 33 git continuous-integration hudson hudson-plugins jenkins

我试图根据这篇文章用git设置hudson ,但是在构建过程中我仍然会遇到git错误:

FATAL: Could not apply tag-PROJECTNAME-ID
...
Caused by: hudson.plugins.git.GitException: Command returned status code 128: 
*** Please tell me who you are.
Run Code Online (Sandbox Code Playgroud)

running:git config --global user.name显示有效数据,.gitconfig 可访问.

如何纠正这些错误?

小智 35

安装git插件后,您可以在Jenkins"配置系统"页面中配置git名称和电子邮件...

詹金斯的git选项

  • git插件比阅读答案中的注释更快地解决了这个问题. (2认同)

Von*_*onC 26

如果可能需要user.nameuser.email.
实际上有一张自动设置它们开放票.

它也可能是Hudson服务器问题:

我有点困惑看到这条消息,因为我已经配置了git来获取我的用户名和电子邮件.
然后我记得Hudson正在使用tomcat6用户运行的tomcat上运行.
我需要配置tomcat6用户以获得在git存储库上标记所需的git配置.

通过执行以下操作为tomcat6用户设置git配置:

sudo -s -H -u tomcat6
git config --global user.name "Hudson"
git config --global user.email "hudson@mydomain.com"
exit
Run Code Online (Sandbox Code Playgroud)

需要注意的是,如果您使用Hudson提交并推送到另一个存储库,这些配置设置将用于Hudson完成的所有提交.

下一步是让Hudson知道HOMEtomcat6用户的位置.
Hudson/configure页面上有一个用于定义环境变量的复选框.
一旦检查完毕,您就可以输入一个键值对.添加以下对并保存配置:

name: HOME
value: /usr/share/tomcat6/
Run Code Online (Sandbox Code Playgroud)

下一次构建Hudson项目时,您应该看到以下行靠近控制台输出的顶部:

Env: HOME=/usr/share/tomcat6/
Run Code Online (Sandbox Code Playgroud)

git插件现在应该能够成功标记存储库并继续构建.


正如这里提到的,你可能有一个没有帐号的特殊tomcat6用户(不允许登录,没有shell:我引用"tomcat6はログイン不许可(シェルは/ bin/false)ってなっている"),在这种情况下你需要在系统级别设置user.name和email)

git config - system user.email "kompiro @ ..."
git config --system user.name " kompiro... " 
Run Code Online (Sandbox Code Playgroud)

如果你在Hudson中使用tomcat6用户,Hudson将需要在/ etc/passwd中看到该用户,如下所述:

更具体地说,在/etc/passwd.出于某种原因,GIT需要在该字段中输入全名.在Ubuntu下,Tomcat用户默认放置在那里,没有任何东西("Unter Ubuntu hat der Tomcat-Userdortstandidemäßigichtsgesetzt.").
现在简单地添加一个' Tomcat 6,,, a',它也与CI邻居一起运行.
("Fügtmanujetzt dort einfach''ein Tomcat 6,,,,läuftesauch mit dem CI-Nachbarn")