Distributed version control system implemented with isomorphic-git
Synopsis
git <command> [<args>]
Description
A browser-based git implementation powered by isomorphic-git, operating on SLICC's virtual filesystem (LightningFS/IndexedDB). Supports core git workflows including cloning repositories, committing changes, branching, merging, and pushing to remotes. Network operations use a CORS-compatible HTTP transport. Authentication for GitHub uses a personal access token configured via git config github.token <PAT>.
Commands
init Initialize a new repository
clone <url> Clone a repository
add <pathspec> Add file contents to the index
status Show the working tree status
commit -m <message> Record changes to the repository
log Show commit logs
branch List, create, or delete branches
checkout <branch|file> Switch branches or restore files
diff Show changes between commits or working tree
show <ref> Show commit details and diffs
remote Manage remote repositories
fetch Download objects and refs from remote
pull Fetch and merge changes
push Update remote refs
merge <branch> Join two development histories together
reset Reset HEAD, index, and working tree
stash Stash changes in a dirty working directory
rm <file> Remove files from the working tree and index
mv <source> <dest> Move or rename a file
tag Create, list, or delete tags
ls-files Show tracked files
show-ref List references (branches and tags)
config <key> [value] Get and set repository options
rev-parse <ref> Pick out and massage parameters
Options
--help, -h Show help with available commands
--version Print version (git version 2.43.0 with isomorphic-git)
Examples
$ git clone https://github.com/user/repo.git
Clone a GitHub repository into the virtual filesystem.
$ git add . && git commit -m "initial commit"
Stage all changes and commit.
$ git config github.token ghp_xxxx
Set a GitHub personal access token for authenticated operations.
$ git push origin main
Push commits to the remote repository.
$ git stash && git checkout feature && git stash pop
Stash changes, switch branches, and restore stashed work.
Notes
This is a browser-based git implementation using isomorphic-git over LightningFS (IndexedDB). It supports most common git workflows but has some limitations compared to native git. All operations run entirely in the browser — there is no server-side git process. Network operations (clone, fetch, push, pull) route through a CORS-compatible HTTP transport; in CLI mode traffic goes through /api/fetch-proxy, while the extension uses direct fetch.
Stash support includes push, pop, list, drop, and show. Merge performs a basic three-way merge. Some advanced git features (rebase, cherry-pick, submodules) are not available.
See Also
commands