繁体   English   中英

在Windows中更改git挂接凭据

[英]Change git hook credentials in Windows

我在Windows中运行并有一个调用python 3脚本的git post-receive挂钩。 这个Python脚本做了很多事情。 其中一个是输出运行git hook的用户名。 这个用户名是MACHINENAME $(机器名称是MACHINENAME),我认为是网络服务帐户,但我可能在这里错了。 之后调用subprocess.run来执行对ClearCase命令clearfsimport的调用。 请注意,我使用clearfsimport'nsetevent'开关,它允许其他用户签到此视图,但这似乎不适用于网络服务帐户。

如果我直接以ClearCase视图所有者的身份运行python命令,则clearfsimport会成功。 如果我以另一个用户身份运行它,则clearfsimport会成功。 但是,如果我将它作为git钩子运行,它将失败,并显示以下错误消息:

subprocess.CalledProcessError:命令'['clearfsimport','-recurse','-nsetevent',' - rmname','-comment',“这是我的评论”,'/ path / to / clearfsimport / source',' / path / to / ClearCase / view']'返回非零退出状态1

我该怎么做才能使这个git钩子正常工作? 如果我必须调整python,git,ClearCase或Windows或某种组合,这无关紧要。

由于git钩子在git bash中自行执行,检查是否会影响参数传递给windows可执行文件clearfsimport (尤其是路径)

一个简单的测试:在.bat脚本中包装clearfsimport调用,并在该脚本中设置源和目标路径,然后让你的git hook调用所述脚本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM