如何知道作业詹金斯调用的“命令git push”使用的用户

时间:2018-11-29 14:51:02

标签: windows git powershell jenkins gitlab

我开发了 powershell脚本,用于使用外部进程生成的目录内容更新git存储库

脚本由分配在Jenkins Windows Server中的 job jenkins 执行。 Job与公司存储库服务器具有通用gitlab连接

脚本powershell使用 git命令行(例如git clone,git分支,git push…),并且可以很好地完成任务,正确更新远程存储库。

问题是... 当我调用git push时,我不知道与git存储库进行交互的凭据 ... Git push不需要询问用户名和密码,即可完成工作好吧。

问题。 有没有办法知道git push命令使用了什么用户?。我猜它使用了詹金斯(Jenkins)的gitlab连接,但是我必须确保它。

非常感谢, 阿方索·马丁(AlfonsoMartín)。

1 个答案:

答案 0 :(得分:1)

由于jenkins作业触发了powershell脚本,因此该脚本将与运行jenkins进程的用户一起执行。我猜这个ID(运行jenkins的系统ID)在gitlab中设置了ssh密钥,并且无需密码即可连接。

您可以在Powershell脚本中添加git config user.name以打印用户名。

系统Powershell脚本执行将无法访问jenkins gitlab配置文件来推送代码。那将是詹金斯的工作结帐或詹金斯本身的发布。