Skip to content

feat: Add git workspace support with clone, update, and force pull#388

Merged
jahvon merged 6 commits intomainfrom
claude/determined-beaver
Apr 14, 2026
Merged

feat: Add git workspace support with clone, update, and force pull#388
jahvon merged 6 commits intomainfrom
claude/determined-beaver

Conversation

@jahvon
Copy link
Copy Markdown
Member

@jahvon jahvon commented Apr 14, 2026

Add support for Git repositories as workspaces. Users can now add workspaces directly from HTTPS/SSH Git URLs with --branch and --tag flags. Implements workspace update command to pull latest changes, and extends flow sync with --git flag to update all git workspaces. Includes --force flag for hard reset when local changes conflict.

Closes #138

Add support for Git repositories as workspaces. Users can now add
workspaces directly from HTTPS/SSH Git URLs with --branch and --tag
flags. Implements workspace update command to pull latest changes,
and extends flow sync with --git flag to update all git workspaces.
Includes --force flag for hard reset when local changes conflict.

Closes #138

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 14, 2026

Codecov Report

❌ Patch coverage is 48.47328% with 135 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
internal/services/git/git.go 37.00% 42 Missing and 21 partials ⚠️
cmd/internal/workspace.go 57.93% 36 Missing and 17 partials ⚠️
cmd/internal/sync.go 47.22% 17 Missing and 2 partials ⚠️

📢 Thoughts on this report? Let us know!

jahvon and others added 5 commits April 13, 2026 21:09
Extract cloneGitWorkspace helper to reduce nesting complexity,
fix wasted assignment, and wrap long log line.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Tests clone from a local bare repo (file:// URL), workspace get,
update, force update, and sync --git. Also adds file:// protocol
support to IsGitURL for local testing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Extract initLocalWorkspace helper to flatten the if/else block.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add prerequisite callout in installation docs and workspace guide.
Add EnsureInstalled runtime check so users get a clear error if
git is not on PATH.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@jahvon jahvon marked this pull request as ready for review April 14, 2026 01:25
@jahvon jahvon merged commit 93afc60 into main Apr 14, 2026
14 checks passed
@jahvon jahvon deleted the claude/determined-beaver branch April 14, 2026 01:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Git workspaces

1 participant