Git签出失败,退出代码为Azure DevOps中的1

Git签出失败,退出代码为Azure DevOps中的1,git,azure-devops,sonarqube,Git,Azure Devops,Sonarqube,我在Azure DevOps存储库中有安装代码。我正在为管道使用自托管代理。我已经设置了一个管道来使用Azure DevOps存储库,但是在结帐时,我发现了以下错误 我已经尝试过清理工作文件夹。此外,我还在特定作品的配置文件中添加了“IgnoreCase=True” ##[debug]STDOUT/STDERR stream read finished. ##[debug]STDOUT/STDERR stream read finished. ##[debug]Finished process

我在Azure DevOps存储库中有安装代码。我正在为管道使用自托管代理。我已经设置了一个管道来使用Azure DevOps存储库,但是在结帐时,我发现了以下错误

我已经尝试过清理工作文件夹。此外,我还在特定作品的配置文件中添加了
“IgnoreCase=True”

##[debug]STDOUT/STDERR stream read finished.
##[debug]STDOUT/STDERR stream read finished.
##[debug]Finished process 14976 with exit code 1, and elapsed time 00:00:13.4575355.
##[error]Git checkout failed with exit code: 1
##[debug]Processed: ##vso[task.logissue type=error;]Git checkout failed with exit code: 1
##[debug]Processed: ##vso[task.complete result=Failed;]
##[debug]   at Agent.Plugins.Repository.GitSourceProvider.GetSourceAsync(AgentTaskPluginExecutionContext executionContext, RepositoryResource repository, CancellationToken cancellationToken)
   at Agent.Plugins.Repository.CheckoutTask.RunAsync(AgentTaskPluginExecutionContext executionContext, CancellationToken token)
   at Agent.PluginHost.Program.Main(String[] args)
我想使用自托管代理签出Azure DevOps存储库

在 Agent.Plugins.Repository.GitSourceProvider.GetSourceAsync(AgentTaskPluginExecutionContext executionContext、RepositoryResource存储库、CancellationToken 取消令牌)

根据此错误消息,我检查其相应的源函数代码:。然后,我从评论中确认,该回购协议具有子模块。因此,在生成之前,由于未启用
签出子模块
可选而导致的此问题

根据私下共享的签出日志:

checkoutSubmodules
的值为
False
,这就是代理无法安装包含子模块的项目并抛出错误消息的原因

要解决此问题,只需转到获取源代码页,然后启用可选的:签出子模块


您最好通过共享已完成的日志进行更新。到目前为止,这些日志都是很难分析的。此外,您的回购是否有子模块?@MerlinLiang MSFT是的回购是否有子模块。但是,当我使用“Azure Pipelines”代理时,我在签出时没有收到任何错误。明白了,子模块应该是导致问题的原因。您介意分享完整的调试日志吗?@MerlinLiang MSFT full log将包含一些机密信息,因此我无法分享。但如果我使用“Azure管道”代理也没关系,但是当我使用这个代理时,在SonarQube分析中,我得到了一个代理错误。“代理作业1:[SQ]API GET'/API/server/version'失败,错误为:{“code”:“ETIMEDOUT”,“errno”:“ETIMEDOUT”,“syscall”:“connect”,“address”:“XXXXXX”,“port”:XXX}”“如果您能在这件事上提供帮助,它将为我们带来麻烦。总之,我们的目标是从Azure DevOps管道运行声纳分析。我就是这么做的。[debug]checkoutSubmodules=True##[debug]checkoutNestedSubmodules=TrueStill,git签出失败,出现以下错误。错误:无法创建文件“XXXXXXXXXX”的文件名long@ankitthakkar,这是另一个错误,是private agent中的默认限制。您最好缩短文件名。@ankitthakkar您好,如果这有帮助,您可以接受此答案,以便其他用户可以参考此解决方案。@MerlinLiang MSFT是否知道当嵌套子模块未签出时该怎么做,关于访问权限的一些警告-如何实际确保Azure代理拥有所有权限?