操作其实不难。打开VS Code,在项目根目录右键,选择“Open in GitHub Codespaces”(如果本地没有COBOL环境就优先用这种方式),或者确认已经安装了GnuCOBOL。关键点就在这里:必须在项目根目录下操作,否则Copilot无法感知文件关联。
接着按下 Ctrl+I 唤出Copilot Chat面板,输入这条指令:
`/explain this project structure using only the files in the current directory. List each file, its likely role (e.g., entry point, data layer), and any obvious inter-file dependencies.`
等它输出后,立刻检查它是否识别出主程序入口(比如main.cob或app.js)和数据层文件(比如data.cob或db-access.ja va)。如果Copilot竟然把config.xml标成了“核心业务逻辑”,那说明当前目录结构太乱了,需要手动先收拾一遍:删掉临时build目录、把旧备份文件夹归档,再重试一次。
---
这一块有两个路径。如果你有GitHub Copilot CLI环境,直接在终端运行:
`copilot scan --project-path . --ruleset legacy-arch-v3 --output deps.json`
然后把生成的deps.json拖进Copilot Chat窗口,输入:“基于此依赖图,画出三个最高频调用路径,用Mermaid语法输出,每条路径标注触发场景(如‘开户流程’‘日终批处理’)。”
如果命令报错“command not found”,说明没有安装CLI工具。这时改用VS Code内建能力:打开一个被多处调用的函数,在其定义上方插入注释:`// @copilot-dependency-snapshot: this function is called by [moduleA], [moduleB], [batch-job-C]`,保存后再唤出Chat,直接输入/explain。
乍一看,AI生成的Mermaid图挺漂亮,但别急着用它去汇报。先复制进VS Code新标签页,通过预览插件实时检视。你大概率会发现,它把日志工具类标成了“核心服务”。手动删掉log4j相关节点后,再对剩余路径追问:“如果砍掉路径2,哪些业务功能会立即中断?”——这个问题往往能炸出真正的业务依赖关系。
---