我有一个蓝色海洋项目,它使用ssh键抓取一个git项目,我添加了新的shell命令,但是它没有在.gitsubmodules文件夹中提取子模块:
[submodule "Assets/Engine"]
path = Assets/Engine
url = killerbros@vs-ssh.visualstudio.com:22/Game/_ssh/Engine
branch = "master"
[submodule "Assets/PlatformerModule/Extension"]
path = Assets/PlatformerModule/Extension
url = killerbros@vs-ssh.visualstudio.com:22/Game/_ssh/PlatformerModule
branch = "master"我尝试为git子模块init和git子模块更新添加shell命令,但由于身份验证,它在git子模块更新上失败了:
克隆入'/Users/Shared/Jenkins/Home/workspace/Platform_master-6J2EI5MV24CJ5OZMBARB5I3D276FBUM4RTXAZNAML5SYUAR7S3YA/Assets/Le'...拒绝许可,请再试一次。拒绝许可,请再试一次。myapp@vs-ssh.visual alstudio.com:许可被拒绝(密码,公钥)。致命:无法从远程存储库读取。
我还尝试在git scm插件中添加“高级子模块步骤”,但没有效果。
是否有办法确保在这些更新中也使用正确的ssh键?
发布于 2018-02-10 11:39:50
是否有办法确保在这些更新中也使用正确的ssh键?
是的,使用JENKINS SSH凭据插件,您可以复制该插件中的私钥,并为Git作业设置使用相关凭证,这将使用上述私钥进行任何ssh调用。
这就假设了一个足够近期(2016年)的Jenkins Git客户端的版本。
作为在这里看到的,您可以在高级子模块行为设置中使用来自父存储库默认远程的凭据。
https://stackoverflow.com/questions/48666916
复制相似问题