summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAdam <[email protected]>2025-09-25 06:38:59 -0500
committerAdam <[email protected]>2025-09-25 14:41:31 -0500
commit945de4eddc249a6645b974525eed9f6795eac3aa (patch)
tree2388070910ffeb9ee593429445c10060bf613b4b
parentcd655177d9514864f4daa143c2576963ed95d2f8 (diff)
downloadopencode-945de4eddc249a6645b974525eed9f6795eac3aa.tar.gz
opencode-945de4eddc249a6645b974525eed9f6795eac3aa.zip
wip: watch select .git files in watcher
-rw-r--r--packages/opencode/src/cli/cmd/tui.ts2
-rw-r--r--packages/opencode/src/file/ignore.ts7
-rw-r--r--packages/opencode/src/file/watcher.ts1
3 files changed, 5 insertions, 5 deletions
diff --git a/packages/opencode/src/cli/cmd/tui.ts b/packages/opencode/src/cli/cmd/tui.ts
index 168933119..119a8c789 100644
--- a/packages/opencode/src/cli/cmd/tui.ts
+++ b/packages/opencode/src/cli/cmd/tui.ts
@@ -9,7 +9,6 @@ import { Installation } from "../../installation"
import { Config } from "../../config/config"
import { Bus } from "../../bus"
import { Log } from "../../util/log"
-import { FileWatcher } from "../../file/watcher"
import { Ide } from "../../ide"
import { Flag } from "../../flag/flag"
@@ -178,7 +177,6 @@ export const TuiCommand = cmd({
.then(() => Bus.publish(Ide.Event.Installed, { ide }))
.catch(() => {})
})()
- FileWatcher.init()
await proc.exited
server.stop()
diff --git a/packages/opencode/src/file/ignore.ts b/packages/opencode/src/file/ignore.ts
index 53e2003b9..912f2159e 100644
--- a/packages/opencode/src/file/ignore.ts
+++ b/packages/opencode/src/file/ignore.ts
@@ -6,9 +6,6 @@ export namespace FileIgnore {
"**/.pnpm-store/**",
"**/vendor/**",
- // vcs
- "**/.git/**",
-
// Build outputs
"**/dist/**",
"**/build/**",
@@ -50,8 +47,12 @@ export namespace FileIgnore {
filepath: string,
opts: {
extra?: Bun.Glob[]
+ whitelist?: Bun.Glob[]
},
) {
+ for (const glob of opts.whitelist || []) {
+ if (glob.match(filepath)) return false
+ }
const extra = opts.extra || []
for (const glob of [...GLOBS, ...extra]) {
if (glob.match(filepath)) return true
diff --git a/packages/opencode/src/file/watcher.ts b/packages/opencode/src/file/watcher.ts
index 84a80c0fb..652cb7853 100644
--- a/packages/opencode/src/file/watcher.ts
+++ b/packages/opencode/src/file/watcher.ts
@@ -30,6 +30,7 @@ export namespace FileWatcher {
ignoreInitial: true,
ignored: (filepath) => {
return FileIgnore.match(filepath, {
+ whitelist: [new Bun.Glob("**/.git/{index,logs/HEAD}")],
extra: ignore,
})
},