gpt4 book ai didi

git - Jenkins,通过 ssh 与多个用户获取 git 子模块?

转载 作者:太空狗 更新时间:2023-10-29 13:30:59 24 4
gpt4 key购买 nike

不知道标题是否描述了我想说的内容,但这里是:

我想知道在使用 git 子模块设置 Jenkins 时什么是“最佳实践”。主模块和子模块 repo 都可以通过 ssh 访问,并且由于我们有多个用户,所以所有这些用户都有各自的用户名。拥有自己用户的 Jenkins 也是如此。但是,我们(我)偶然发现了一个问题。如果我创建一个子模块:git submodule add ssh://my-user-name@address-to-module-repopush 它,Jenkins 在尝试时会将我称为用户 < strong>fetch 子模块,这显然会失败。如果其他用户执行了 pull ,我的用户名仍会在路径中(在 .gitmodule、.git/config 等中)。

我找到了另一个帖子 Git submodules and ssh access处理“普通”用户之间的共享,但是当 Jenkins 尝试构建时它并没有真正解决问题,因为我只允许在 Jenkins 获取我不能做的所有事情之后执行 shell cmd链接中提到,或者我( Jenkins 新手)可以吗?

所以,总结一下。如何解决这个问题,以便 Jenkins 在通过 ssh 获取子模块时使用自己的用户?

Br,手枪先生

最佳答案

我在 StackOverflow 上的另一个问题中找到了一个很好的解决方案:Git submodule URL not including username?

你可以使用

[submodule foosub]
path = foosub
url = ./../foosub

定义一个相对于项目所用网址的网址。例如,如果您有项目 URL myuser@myserver.com/git/project 和子模块 URL myuser@myserver.com/git/foosub,则配置应该有效。当然,如果子模块与项目位于不同的服务器上,它就无法工作。

现在 Jenkins 应该将自己的用户数据应用到子模块,因为它在项目 URL 中有自己的用户数据集。

关于git - Jenkins,通过 ssh 与多个用户获取 git 子模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10993464/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com