Plugin marketplace: add explicit update command and prevent shallow clone history accumulation
- 主要語言
- Shell
- 星號
- 11.2k
- 分支
- 1.9k
- 平均合併
- 14 小時 16 分鐘
- 30 天內合併 PR
- 6
描述
Summary
Two minor feature gaps related to plugin marketplace management:
1. No explicit /plugin marketplace update command
Currently, the only way to update a marketplace is implicitly through /plugin marketplace browse, which triggers a git pull under the hood. This behavior is non-obvious and undocumented.
Current marketplace subcommands:
- /plugin marketplace add
- /plugin marketplace remove
- /plugin marketplace list
- /plugin marketplace browse
Suggestion: Add /plugin marketplace update (or update --all) as a dedicated subcommand so users can explicitly refresh marketplace catalogs without needing to browse.
2. Shallow clone history accumulates over time
When a marketplace is first added, it's cloned as a shallow clone (--depth 1). However, subsequent updates (triggered by browse) append new commits rather than re-shallowing. Over time, the local clone at ~\AppData\Local\copilot\marketplaces\\ grows
unbounded.
For a marketplace, only the latest state of the plugins/ directory matters — intermediate commit history is unnecessary.
Suggestion: Use git fetch --depth 1 (or equivalent) during updates to keep the clone minimal, rather than a standard git pull that accumulates history.
Impact
Neither issue is critical. Both are quality-of-life improvements — the first for discoverability, the second for disk efficiency on machines with many marketplaces or frequent updates.
貢獻指南
評估
這個 Issue 還沒有評估資料。