Merge pull request #1454 from RooVetGit/cte/disable-repo-per-workspace-checkpoints

Disable repo per workspace checkpoints
This commit is contained in:
Chris Estreich 2025-03-07 09:28:17 -08:00 committed by GitHub
commit 9ad8aaf300
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 15 additions and 39 deletions

View file

@ -0,0 +1,5 @@
---
"roo-cline": patch
---
Disable repo-per-workspace checkpoints

View file

@ -3688,10 +3688,14 @@ export class Cline {
log,
}
const service =
this.checkpointStorage === "task"
? RepoPerTaskCheckpointService.create(options)
: RepoPerWorkspaceCheckpointService.create(options)
// Only `task` is supported at the moment until we figure out how
// to fully isolate the `workspace` variant.
// const service =
// this.checkpointStorage === "task"
// ? RepoPerTaskCheckpointService.create(options)
// : RepoPerWorkspaceCheckpointService.create(options)
const service = RepoPerTaskCheckpointService.create(options)
service.on("initialize", () => {
try {

View file

@ -1,8 +1,8 @@
import { HTMLAttributes } from "react"
import { VSCodeCheckbox, VSCodeRadio, VSCodeRadioGroup } from "@vscode/webview-ui-toolkit/react"
import { VSCodeCheckbox } from "@vscode/webview-ui-toolkit/react"
import { GitBranch } from "lucide-react"
import { CheckpointStorage, isCheckpointStorage } from "../../../../src/shared/checkpoints"
import { CheckpointStorage } from "../../../../src/shared/checkpoints"
import { SetCachedStateField } from "./types"
import { SectionHeader } from "./SectionHeader"
@ -42,39 +42,6 @@ export const CheckpointSettings = ({
When enabled, Roo will automatically create checkpoints during task execution, making it easy to
review changes or revert to earlier states.
</p>
{enableCheckpoints && (
<div>
<div className="font-medium">Storage</div>
<VSCodeRadioGroup
role="radiogroup"
value={checkpointStorage}
onChange={(e) => {
if ("target" in e) {
const { value } = e.target as HTMLInputElement
if (isCheckpointStorage(value)) {
setCachedStateField("checkpointStorage", value)
}
}
}}>
<VSCodeRadio value="task">Task</VSCodeRadio>
<VSCodeRadio value="workspace">Workspace</VSCodeRadio>
</VSCodeRadioGroup>
{checkpointStorage === "task" && (
<p className="text-vscode-descriptionForeground text-sm mt-0">
Each task will have it's own dedicated git repository for storing checkpoints. This
provides the best isolation between tasks but uses more disk space.
</p>
)}
{checkpointStorage === "workspace" && (
<p className="text-vscode-descriptionForeground text-sm mt-0">
Each VSCode workspace will have it's own dedicated git repository for storing
checkpoints and tasks within a workspace will share this repository. This option
provides better performance and disk space efficiency.
</p>
)}
</div>
)}
</div>
</Section>
</div>