README.md
Oxygen for Visual Studio Code
Source control integration for Oxygen (oxy) repositories: a
Source Control view with changes and conflicts, diffs against the working
copy's base, quick-diff gutters, explorer decorations, a status bar item, and
commit from the input box. The full design, milestone by milestone, is in
docs/spec.md in this repository.
Requirements
- Visual Studio Code 1.137 or later.
oxy0.1 or later on your PATH, at~/.local/bin/oxy, or named in theoxygen.pathsetting. The extension drivesoxy --jsonand never reads.oxy/itself.
Building
npm install
npm run check # typecheck, bundle, and test against the oxy binary
npm run package # oxygen-vscode-<version>.vsix
code --install-extension oxygen-vscode-0.1.0.vsix
npm run watch rebuilds on change; press F5 in VS Code to launch an
Extension Development Host with the bundle.
What it does
- Source Control view: Changes, Conflicts and Subrepos groups; open
changes as a diff against the working copy's base; discard, commit
selected paths, commit chosen hunks, amend;
Ctrl+Entercommits. - Editor: quick-diff gutters, explorer and tab decorations, inline blame (toggle from the context menu), file history with diffs between versions, CodeLens actions over conflict markers (accept a side, all sides, or a deletion), keep-this-candidate for tree conflicts, Mark Resolved.
- Status bar: bookmark, working copy and state; click to switch, create, merge or delete bookmarks; a sync counter with Sync, Fetch, Pull, Push and Push Bookmark.
- Views: Oxygen Operations (undo to any point), Oxygen Bisect (start, good, bad, skip, run, reset), Oxygen Trust (policy, signatures), and a History graph with per-change actions (diff, check out, describe, tag, abandon, and split, squash and rebase from the picker or by right-clicking a row, each confirmed and undoable).
- Commands: Show History, File History, Tags, Create Tag, Add Workspace, Update Subrepos, Verify Signatures, Clone Repository, Initialize Repository, Show Output.
Status
Milestones 0.1 to 0.6 of the spec are implemented (see CHANGELOG.md). Left for 1.0: tests on macOS and Windows, a Marketplace publisher, and the open questions in the spec.
Licence
MIT or Apache-2.0, at your option, as for Oxygen itself.