Skip to content
| Marketplace
Sign in
Visual Studio Code>SCM Providers>SVN MonitorNew to Visual Studio Code? Get it now.
SVN Monitor

SVN Monitor

zhanwangfeng

|
1 install
| (0) | Free
在 VSCode 侧边栏集中监控多个本地 SVN 工作副本的状态、分支、提交与文件变更。
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

SVN Monitor for VSCode

VS Marketplace Installs Downloads Rates

在 VSCode 侧边栏集中监控多个本地 SVN 工作副本的状态、分支、提交与文件变更,无需逐个切换目录。

  • GitHub: https://github.com/zhanwangfeng/SvnMonitorForVSCode
  • VSCode: https://marketplace.visualstudio.com/items?itemName=zhanwangfeng.svnmonitor-for-vscode

简介

SVN Monitor 是一个 VSCode 扩展,帮助你在一处查看所有关心的 SVN 工作副本的实时状态。无论是同时维护多个项目,还是需要定期审查若干仓库的代码变更,都可以将它作为统一的 SVN 监控面板。

  • 一眼掌握:列表条目直接显示分支/目录、本地/服务器版本号、落后版本数、文件计数
  • 低侵入:默认只读取 SVN 元信息;写操作(提交/更新/切换/合并)需主动触发
  • 原生体验:符合 VSCode 交互习惯,支持主题色与图标

功能特性

侧边栏列表

  • 活动栏图标点击展开「工作副本监控」视图
  • 每个工作副本条目展示:目录名 · 分支/目录 · r本地版本 · ↓落后 · 文件计数(+新增 / ~修改 / ?未跟踪 / C冲突 / !缺失)
  • 鼠标悬停显示完整路径、URL、仓库根、版本信息、最新提交摘要
  • 状态图标:✅ 干净 / 🖉 有修改 / ↓ 落后 / ⚠️ 读取失败

详情面板(点击条目打开)

分块展示该工作副本的完整明细:

区块 内容
基本信息 分支/目录、URL、仓库根、状态徽章
版本同步 本地版本、服务器最新版本、落后版本数、工作区是否干净、各类文件计数
文件变更 分「待提交(A/D/R)」「已修改(M)」「未跟踪(?)」「冲突(C)」「缺失(!)」五组,附增删行数
标签列表 服务器 ^/tags 下的标签目录
最近提交 最近 N 条提交(revision、作者、时间、消息)
分支目录 服务器 trunk / branches 目录,可切换/合并

详情面板内置快捷操作:提交、更新、添加全部、整库重置、刷新、在终端中打开、在资源管理器中打开、在新窗口打开、复制路径。

文件级操作

  • 未跟踪:+添加(svn add)/ 忽略(svn propset svn:ignore)
  • 已修改:差异(vscode.diff)/ 撤销(svn revert)
  • 已新增:取消(svn revert 取消 svn add)
  • 已删除/缺失:恢复(svn revert)
  • 冲突文件:高亮提示手动解决

工作副本管理

  • 添加目录:选择本地目录,自动校验是否为 SVN 工作副本,支持设置别名
  • 移除监控:从列表移除(不影响本地文件)
  • 刷新:单条刷新 + 全部刷新(带并发上限)
  • 自动轮询:可配置间隔自动刷新,窗口失焦时自动暂停

安装

方式一:从 Marketplace 安装

在 VSCode 扩展面板搜索 SVN Monitor,点击安装。

方式二:从 VSIX 安装

code --install-extension svnmonitor-for-vscode-1.1.3.vsix

使用指南

1. 添加第一个工作副本

  1. 点击活动栏的 SVN Monitor 图标
  2. 点击视图标题栏的 + 按钮
  3. 在弹出的目录选择器中选中一个 SVN 工作副本
  4. (可选)为该工作副本输入别名
  5. 工作副本立即出现在列表中并自动刷新状态

如果选择的目录不是 SVN 工作副本,会弹出提示询问是否仍要添加。

2. 查看详情

  • 单击列表条目,打开详情面板
  • 详情面板复用同一实例,切换工作副本不重新创建窗口
  • 工作副本状态变化时,若详情面板正显示该工作副本,会自动同步刷新

3. 刷新状态

  • 全部刷新:点击视图标题栏的 🔄 按钮
  • 单条刷新:右键条目 → 「刷新该工作副本」
  • 刷新过程在状态栏显示进度,多工作副本并发执行(默认并发 4)

4. 移除监控

  • 右键条目 → 「移除监控」
  • 二次确认后从列表移除,本地目录文件不会被删除
  • 重启 VSCode 后监控列表依然保留(globalState 持久化)

5. SVN 写操作

右键工作副本条目或使用详情面板工具栏,可执行:

  • 提交(svn commit -m)
  • 更新(svn update)
  • 添加全部未跟踪文件(svn add . --force)
  • 整库重置(svn revert -R .,危险操作,需二次确认)
  • 切换分支目录(svn switch ^/branches/x)
  • 合并分支(svn merge ^/branches/x)
  • 创建标签(svn copy ^/trunk ^/tags/x -m)
  • 删除标签(svn delete ^/tags/x -m)
  • 查看差异(vscode.diff,比较 BASE 与工作区)

6. 快捷操作

右键工作副本条目,可快速:

  • 在资源管理器中打开(系统文件管理器)
  • 在终端中打开(以该工作副本为工作目录)
  • 在新窗口中打开(VSCode 新窗口加载该目录)

配置项

在 settings.json 中可调整以下参数:

配置项 类型 默认值 说明
svnMonitor.autoRefresh.enabled boolean false 是否启用自动轮询刷新
svnMonitor.autoRefresh.intervalSec number 60 自动刷新间隔(秒),范围 30~3600
svnMonitor.refresh.concurrency number 4 全部刷新时的并发上限,范围 1~16
svnMonitor.refresh.timeoutMs number 5000 单次 svn 命令超时(毫秒)
svnMonitor.detail.commitCount number 20 详情面板显示的提交历史条数,范围 1~200
svnMonitor.detail.showFileStats boolean true 详情面板是否展示文件增删行数(解析 svn diff,性能较低)
svnMonitor.svn.executablePath string "" svn 可执行文件路径,留空使用 PATH 中的 svn
svnMonitor.operations.confirmDangerous boolean true 危险操作(整库重置、撤销修改、删除标签等)是否二次确认
svnMonitor.operations.historySize number 50 每工作副本保留的操作历史条数,范围 0~500
svnMonitor.operations.enableTag boolean true 是否启用标签管理(svn copy / svn delete 远程操作)

配置示例

{
  "svnMonitor.autoRefresh.enabled": true,
  "svnMonitor.autoRefresh.intervalSec": 120,
  "svnMonitor.refresh.concurrency": 8,
  "svnMonitor.detail.commitCount": 50,
  "svnMonitor.operations.confirmDangerous": true
}

常见问题

Q:启动后看不到任何工作副本? A:首次使用列表为空,点击视图标题栏的 + 添加你的第一个工作副本。

Q:提示「未检测到 svn 可执行文件」? A:请确保系统已安装 svn(Subversion)并加入 PATH,或在设置中指定 svnMonitor.svn.executablePath。

Q:某个工作副本显示「读取失败」? A:可能是路径被移动/删除,或 svn 命令执行超时。右键「刷新该工作副本」重试;若路径已不存在,请「移除监控」。

Q:列表会修改我的工作副本吗? A:默认只读取 SVN 元信息(分支、状态、提交历史等)。写操作(commit/update/switch/merge/revert/add)需你主动触发,且危险操作会二次确认。

Q:重启 VSCode 后工作副本列表还在吗? A:在。配置通过 VSCode 的 globalState 持久化,跨工作区共享。

Q:与 Git Monitor 是同一个插件吗? A:不是。SVN Monitor 是独立产品,与 Git Monitor 可同时安装,互不影响。底层调用 svn 命令行,适配 SVN 的集中式版本控制模型(无暂存区、commit 即推送、分支是服务器目录)。

命令面板

所有功能也可通过命令面板(Ctrl+Shift+P)调用,前缀 SVN Monitor::

  • SVN Monitor: 添加目录
  • SVN Monitor: 全部刷新
  • SVN Monitor: 刷新该工作副本
  • SVN Monitor: 移除监控
  • SVN Monitor: 打开详情
  • SVN Monitor: 在资源管理器中打开
  • SVN Monitor: 在终端中打开
  • SVN Monitor: 在新窗口中打开
  • SVN Monitor: 打开设置
  • SVN Monitor: 添加文件到版本控制
  • SVN Monitor: 添加全部未跟踪文件
  • SVN Monitor: 撤销文件修改
  • SVN Monitor: 整库重置 (svn revert -R .)
  • SVN Monitor: 提交
  • SVN Monitor: 更新 (svn update)
  • SVN Monitor: 切换分支目录 (svn switch)
  • SVN Monitor: 合并分支 (svn merge)
  • SVN Monitor: 查看差异
  • SVN Monitor: 创建标签 (svn copy ^/trunk ^/tags/x)
  • SVN Monitor: 删除标签 (svn delete ^/tags/x)

兼容性

  • VSCode 1.80+
  • Windows / macOS / Linux
  • 需系统安装 svn(Subversion)命令行工具

许可证

MIT

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft