{"id":35154805,"url":"https://github.com/open-vcs/openvcs-plugin-git","last_synced_at":"2026-05-05T06:04:22.935Z","repository":{"id":331236280,"uuid":"1123863170","full_name":"Open-VCS/OpenVCS-Plugin-Git","owner":"Open-VCS","description":"Reference Git backend plugin for OpenVCS. Implements Git support using the OpenVCS plugin protocol. Experimental and subject to change.","archived":false,"fork":false,"pushed_at":"2026-04-20T00:09:10.000Z","size":2530,"stargazers_count":1,"open_issues_count":4,"forks_count":0,"subscribers_count":0,"default_branch":"Dev","last_synced_at":"2026-04-20T02:30:57.780Z","etag":null,"topics":["git","plugin"],"latest_commit_sha":null,"homepage":"https://openvcs.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Open-VCS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-27T19:41:45.000Z","updated_at":"2026-04-20T00:09:13.000Z","dependencies_parsed_at":"2026-03-17T06:03:05.192Z","dependency_job_id":null,"html_url":"https://github.com/Open-VCS/OpenVCS-Plugin-Git","commit_stats":null,"previous_names":["open-vcs/openvcs-plugin-git"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Open-VCS/OpenVCS-Plugin-Git","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Open-VCS%2FOpenVCS-Plugin-Git","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Open-VCS%2FOpenVCS-Plugin-Git/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Open-VCS%2FOpenVCS-Plugin-Git/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Open-VCS%2FOpenVCS-Plugin-Git/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Open-VCS","download_url":"https://codeload.github.com/Open-VCS/OpenVCS-Plugin-Git/tar.gz/refs/heads/Dev","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Open-VCS%2FOpenVCS-Plugin-Git/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32487739,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-30T13:12:12.517Z","status":"online","status_checked_at":"2026-05-01T02:00:05.856Z","response_time":64,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","plugin"],"created_at":"2025-12-28T16:44:44.036Z","updated_at":"2026-05-05T06:04:22.928Z","avatar_url":"https://github.com/Open-VCS.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Git Plugin\n\nThis directory contains the System Git VCS backend plugin used by OpenVCS.\n\n## Runtime model\n\n- The plugin runs as a long-lived Node.js process.\n- The plugin implements the JSON-RPC contract used by the backend runtime (`plugin.*` and `vcs.*`) through the shared SDK runtime delegates.\n- The plugin can add top-level app menus and items through `@openvcs/sdk/runtime` helpers.\n- The plugin can open generic plugin-owned modals with the SDK `ModalBuilder` helper.\n- The Repository menu includes Git-only submodule management tooling.\n- In the desktop client, the `Submodules` entry appears in `Repository` after a Git repository is open and the Git plugin runtime is active.\n- Repository clone operations recurse into submodules by default.\n- Repository status views tag tracked submodule paths distinctly so the client can render them as submodules.\n- Git operations are executed through the local `git` CLI.\n- The runtime uses a trust model (no per-capability permission prompts).\n\n## Install\n\n```bash\nnpm install\n```\n\n- The SDK dependency tracks the `edge` tag so it always follows the latest SDK commit.\n\n## Validate\n\n```bash\nnpm run lint\n```\n\n## Build\n\n```bash\nnpm run build\n```\n\n- TypeScript sources live in `src/`.\n- `npm run build` runs `openvcs build`, which invokes `build:plugin` and writes the runtime into `bin/`.\n\n## Test\n\n```bash\nnpm test\n```\n\nSubmodule workflow highlights:\n\n- `clone_repo` uses `git clone --recurse-submodules`.\n- Repository \u003e Submodules supports add, sync, remove, pinned updates, and explicit remote-tracking updates.\n- `Update Remote` follows the branch configured for each submodule in `.gitmodules`.\n\n## Pack For Config Use\n\n```bash\nnpm pack\n```\n\n- `npm pack` uses the package `files` list and `prepack` hook.\n- OpenVCS resolves published packages and local path plugins through npm package semantics.\n\n## Release Channels\n\nCI publishes prereleases with these dist-tags:\n\n- `latest`: stable releases from `Stable`\n- `beta`: builds from the `Beta` branch\n- `nightly`: scheduled builds from `Dev` when changes exist since the last nightly\n- `edge`: working builds from `Dev` push commits\n\nExamples:\n\n```bash\nnpm install @openvcs/git-plugin@edge\nnpm install @openvcs/git-plugin@beta\nnpm install @openvcs/git-plugin@nightly\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-vcs%2Fopenvcs-plugin-git","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopen-vcs%2Fopenvcs-plugin-git","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopen-vcs%2Fopenvcs-plugin-git/lists"}