commit 705b4cc7a064e5494d141c97021b93bc9399a1a5 from: espejo got date: Wed Aug 12 23:17:45 2026 UTC README legible (generado automáticamente desde README.md; no está en el repo original) commit - 1f9436b4527e40695ba3334a40f72ee9a4b16e6d commit + 705b4cc7a064e5494d141c97021b93bc9399a1a5 blob - /dev/null blob + 81411b3d24a28fb51dc985c7e768245f3dd4c4e0 (mode 644) --- /dev/null +++ README.txt @@ -0,0 +1,108 @@ +Got IntelliJ VCS Integration for Game of Trees + +Native version control support for Game of Trees https://gameoftrees.org/ (got) +in IntelliJ-based IDEs: the same file status, diff, commit, history, and +update/push workflow you get with Git, backed by the got CLI. + +Features +-------- + + Detects .got/ work trees as a got VCS root automatically + File status in the Commit tool window (got status) + Native diff and modified-lines gutter (got cat against the base commit) + Commit and rollback from the Commit tool window (got commit, got revert) + A Commit and Send button next to the default Commit action: commits and + opens the native Push dialog in one step + A Log tab with the full commit graph, refs (branches/remote + branches/tags), and per-commit changed files + File history (got log) and Update Project (got update / got fetch) + Clone repositories over ssh:// from the native Clone Repository dialog + (Got in the Version control dropdown) + Current branch name shown in the status bar, and the native Push dialog + (Ctrl+Shift+K) with real outgoing-commit detection for got send + Automatic refresh of the Commit panel and Log tab after commit, push, + or update including changes made outside the IDE (e.g. got commit + in a terminal) + A Settings panel (Settings > Version Control > got) to override the got + binary path and SSH_AUTH_SOCK, for setups where auto-detection doesnt + apply + +How it works +------------ + +Theres no daemon and no cached repository model: every action shells out +to the got binary for the relevant work tree and adapts its output to the +corresponding IntelliJ Platform VCS API. + +IntelliJ feature got command + +VCS root detection presence of a .got/ directory +File status got status +Diff / gutter got cat -c :base +Commit got commit -m +Rollback got revert -R +Commit and Send got commit, then opens the Push dialog +Log tab got log -b, got cat, got ref -l +History got log +Update Project got fetch + got update +Branch widget got info (work tree branch reference) +Push got send +Outgoing commits got ref -l + got log -x against the remote +Clone got clone (bare repo) + got checkout (work tree) + +Source is organized by responsibility under dev.nezzontli.gotvcs: + + cli the single wrapper around got invocations (GotCommandLineWrapper) + changes, checkin, history, update, roots one package per VCS + extension point implemented + repo the Repository model and the branch-name status bar widget + push native Push dialog support (PushSupport and friends), + including outgoing-commit detection + checkout the Got entry in the Clone Repository dialog (CheckoutProvider) + log the Log tab (VcsLogProvider) and the refresh notifier that + keeps it and the Commit panel up to date + settings the persisted configuration and its Settings panel + +Requirements +------------ + + IntelliJ IDEA (or another IntelliJ Platform IDE) 2026.1 or newer + The got binary, either on PATH or configured under Settings > Version + Control > got + +Building +-------- + + ./gradlew buildPlugin + +The resulting ZIP is written to build/distributions/ and can be installed +via Settings > Plugins > > Install Plugin from Disk. + +By default, this downloads a matching IntelliJ IDEA build to compile +against. To use a local installation instead (faster, no download), set in +~/.gradle/gradle.properties (not part of this repo): + + ideLocalPath=/path/to/your/IntelliJ/installation + +Contributing +------------ + +Issues and pull requests are welcome. Before submitting a change: + + ./gradlew buildPlugin verifyPlugin + +verifyPlugin checks compatibility against the IDE versions declared by +sinceBuild in build.gradle.kts and flags deprecated API usage. + +Releasing +--------- + +Pushing a v* tag triggers .github/workflows/release.yml, which builds, +verifies, creates a GitHub Release with the plugin ZIP attached, and +once a PUBLISH_TOKEN secret is configured publishes to the JetBrains +Marketplace. + +License +------- + +GPLv3 LICENSE.