You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Golang中调用SVN查询日志失败问题排查

SVN命令在Go exec调用中路径参数错误的解决方法

问题原因

你遇到的错误是因为调用runSVNCommand时,没有正确拆分SVN的命令参数。exec包不会像shell那样自动分割空格分隔的内容,如果你把目标文件路径和--stop-on-copy、-l 1这类参数合并成一个字符串传给args,SVN会把整个字符串当成文件路径,自然找不到对应文件。

正确的调用方式

把每个SVN参数都拆成独立的字符串传入runSVNCommand,示例代码如下:

output, err := runSVNCommand(
    "XXXX", 
    "XXXXX", 
    true, 
    "", 
    "log", 
    "-r", "1:HEAD", 
    "https://svnRepo.com/svn/SampleCode/AppCode/branches/Release_69.00/Batch1/Backend/arc/appEvents.jaa", 
    "--stop-on-copy", 
    "-l", "1",
)

验证方法

查看代码里fmt.Println("SVN Command being executed: ", cmd.String())的输出,如果路径部分被引号包裹且包含--stop-on-copy,就说明参数拆分错误。正确的输出里,--stop-on-copy应该是独立的参数,不会和路径混在一起。

内容的提问来源于stack exchange,提问作者Saby

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 10:43:16