VS Code 和 VSCodium怎么选? vscode 和 vscodium之间的区别
脚本之家
很多人以为自己用的是开源软件,其实用的可能是一个“商业软件的马甲”。咱们今天就来聊聊 Visual Studio Code (VS Code) 和 VSCodium 之间那点不得不说的“真假美猴王”的故事。故事要从我开始搞渗透测试说起。
我是个典型的“开源洁癖”,我的笔记本上贴满了 Tux(Linux企鹅)和各种开源协议的贴纸。几年前,VS Code 刚火起来的时候,我也跟风装了一个。毕竟,轻量、插件多、微软拥抱开源的诚意之作,谁能不爱呢?Github 上那明晃晃的 MIT 协议,让我觉得无比安心。

直到有一天,我在调试服务的时候习惯性地抓包看了一下网络流量。
我惊讶地发现,哪怕我什么代码都没写,只是打开了 VS Code,编辑器就在后台默默地向几个域名发送数据。虽然数据量不大,但频率稳定。
“不对啊,”我眉头一皱,“我明明关掉了‘发送崩溃报告’,这发的是啥?"
我翻 VS Code 的用户协议(EULA),才在密密麻麻的英文里发现了一行小字:你下载的这个 VS Code 二进制包,并不是完全遵循 MIT 协议的,它是微软的产品,受微软软件许可条款约束,并且包含数据遥测(Telemetry)。
就在准备怒删 VS Code 回归 Vim 的时候,我在社区里发现了一个救星——VSCodium。
那么,VSCodium 到底是什么?
如果不看图标(VS Code 是蓝色的,VSCodium 是绿色的),打开这两个软件,你会发现它们长得一模一样。菜单、快捷键、界面布局,完全是双胞胎。
为了让你秒懂,我给你打个比方:
Chrome 浏览器 和 Chromium 的关系,就是 VS Code 和 VSCodium 的关系。
- Chromium / VS Code (源码):这是底层的引擎,是开源的“配方”。任何人都可以拿去用,遵循 MIT 协议。
- Chrome / VS Code (官方安装包):这是 Google 或微软在开源配方基础上,加入了自己的“私货”(Logo、专有功能、数据追踪代码),打包后发布的“商业成品”。
- VSCodium:它是社区里的热心老哥,拿着微软开源的配方,严格按照原版教程烹饪,但是——它故意没放微软的“私货”,换了个名字,免费端上桌给你吃。
简单说:VSCodium 就是去掉了微软遥测数据(Telemetry)和品牌标识的、纯净版 VS Code。
你可能会问:“大征哥,微软那么大的厂,它想加私货,社区这帮人怎么能删得掉呢?"
这就要讲到软件工程里的构建(Build)流程了。
微软在 GitHub 上托管的 vscode 仓库,代码确实是开源的。但是,在这个代码库里,有一个配置文件(product.json),它控制着软件编译后的行为。
当微软打包 VS Code 时,他们会注入特定的配置。这就像是在做汉堡时,最后淋上了特制的“微软酱料”。这个酱料里包含了:
- Telemetry:自动收集用户使用习惯、崩溃日志发回微软。
- Gallery:指向微软官方的插件市场(Marketplace)。
- Proprietary License:强行覆盖 MIT 协议,变为专有软件协议。
VSCodium 项目的核心,其实是一套自动构建脚本(CI/CD Pipeline)。它的工作原理非常聪明:
- 拉取源码:脚本自动从微软的仓库拉取最新的
vscode源码。 - 修改配置:它会修改
product.json,把遥测相关的字段全部禁用或剔除。 - 重新编译:用干净的环境编译出二进制文件。
- 发布:打上 VSCodium 的绿色 Logo,发布给用户。
通过这个过程,VSCodium 实现了代码层面的“物理断网”——由于编译时就没有包含追踪模块,无论你怎么设置,它都不可能向微软发送数据。
讲到这,你可能想立马卸载 VS Code 换成 VSCodium。但是,且慢。技术世界没有银弹,只有 Trade-off(权衡)。
VSCodium 虽然干净,但也带来了一些非常现实的痛点,这也是为什么很多开发者(包括我)在某些场景下依然选择忍受 VS Code 的原因。
微软的 Visual Studio Marketplace 是私有的。虽然你可以在 VS Code 里用,但根据使用条款,不仅限于 VS Code 官方版本使用。
VSCodium 默认不能连接微软的插件市场,它连接的是 Open VSX Registry(一个开源的替代市场)。
- 痛点:虽然大部分插件都有,但有些冷门插件在 Open VSX 上更新滞后,甚至找不到。
这是最痛的一点。微软在这个游戏里留了一手。某些核心插件,微软并没有开源,而是作为闭源扩展发布的。
典型的例子:
- Pylance(Python 的高性能语言服务器):闭源,仅允许在官方 VS Code 运行。VSCodium 只能用旧版的 Python 插件,智能提示差一截。
- Remote - SSH / WSL / Containers:这是 VS Code 的杀手级功能。很遗憾,这套 Remote 开发套件也是闭源的,VSCodium 无法合法使用(虽然有破解法,但不合规)。
- C# Debugger:部分 .NET Core 的调试功能也有限制。
当你兴致勃勃装了 VSCodium,却发现连不上远程服务器,或者写 Python 没有高亮提示时,那种挫败感是真实的。
为了让你更直观地选择,我做了一张对比表:
特性 | VS Code (官方) | VSCodium | Theia (Eclipse) |
|---|---|---|---|
| 核心代码 | 开源 (MIT) | 开源 (MIT) | 开源 (EPL) |
| 最终产品协议 | 专有 (Proprietary) | 开源 (MIT) | 开源 |
| 遥测/追踪 | 有 (默认开启) | 无 (彻底移除) | 无 |
| 插件市场 | 微软官方市场 (全) | Open VSX (较全) | Open VSX |
| 专有插件支持 | 支持 (Pylance, Remote等) | 不支持 (或需折腾) | 不支持 |
| 适用人群 | 普通开发者、追求便利 | 隐私极客、涉密环境 | 需要定制IDE的企业 |
既然如此,我们该怎么选?
- 如果你是极致的隐私主义者,或者你的公司对数据外传有极严格的合规要求(比如军工、金融核心区),VSCodium 是你唯一的选择。它把那扇偷偷透风的窗户彻底焊死了。
- 如果你离不开 Remote SSH,离不开微软最强的 Pylance 补全,或者你只是想安安静静写代码不爱折腾,那么 VS Code 依然是目前最好用的工具。你可以通过设置里的
telemetry.level为off来关掉大部分追踪(虽然不如 VSCodium 彻底)。
其实,VS Code 和 VSCodium 的并存,恰恰是开源精神的一种体现。
微软贡献了代码,换取了市场和数据,这是一种商业交换;而社区通过 VSCodium 拿回了控制权,这是一种自由意志。
技术的意义,不在于强迫你站队,而在于当你想要拒绝被凝视的时候,你依然拥有选择“不”的权利。
VSCodium 就是那个安静地躺在角落里,随时准备为你捍卫权利的“备用钥匙”。
总结
VS Code 和 VS Codium 的主要区别在于开发主体、隐私功能、开源属性及生态支持,具体如下:
开发主体与归属
- VS Code:由微软开发并维护,属于微软官方产品。
- VS Codium:是 VS Code 的开源分支,由社区维护,独立于微软。
隐私与遥测功能
- VS Code:内置微软的遥测(Telemetry)功能,会收集使用数据(如扩展类型、文件操作等),用于产品改进。尽管微软声称数据匿名化,但仍可能引发隐私担忧。
- VS Codium:完全移除了遥测功能,不收集任何使用数据,更适合注重隐私的用户。
开源与专有组件
- VS Code:包含部分微软专有组件(如市场扩展的某些依赖),代码库部分闭源。
- VS Codium:100% 开源,移除了所有微软专有组件,仅保留社区维护的开源部分。
扩展性与生态支持
- VS Code:拥有庞大的扩展市场,支持几乎所有编程语言和框架,扩展兼容性最佳。
- VS Codium:部分依赖微软服务的扩展可能无法运行(如涉及 Azure 云服务的扩展),扩展选择相对受限。
性能与轻量化
- VS Code:因包含遥测和专有组件,资源占用略高。
- VS Codium:移除冗余功能后更轻量,启动和运行速度可能更快。
社区与支持
- VS Code:由微软官方支持,文档完善,问题解决效率高。
- VS Codium:依赖社区支持,活跃但规模较小,问题解决可能需更多时间。
如何选择:
- 优先选 VS Code:若需最强扩展性、完整生态或依赖微软服务(如 Azure 开发)。
- 优先选 VS Codium:若重视隐私、偏好完全开源软件,或愿意牺牲部分扩展功能换取轻量化体验。
类比总结:VS Code 类似“功能全面的付费软件”,VS Codium 类似“功能稍弱但免费的开源替代”,选择需权衡隐私、扩展需求与生态依赖。
