( projectRoot: string, hooks: GitHookName[] = DEFAULT_SYNC_HOOKS, )
| 200 | |
| 201 | /** Whether any CodeGraph sync hook is currently installed. */ |
| 202 | export function isSyncHookInstalled( |
| 203 | projectRoot: string, |
| 204 | hooks: GitHookName[] = DEFAULT_SYNC_HOOKS, |
| 205 | ): boolean { |
| 206 | const hooksDir = gitHooksDir(projectRoot); |
| 207 | if (!hooksDir) return false; |
| 208 | return hooks.some((hook) => { |
| 209 | const file = path.join(hooksDir, hook); |
| 210 | return fs.existsSync(file) && fs.readFileSync(file, 'utf8').includes(MARKER_BEGIN); |
| 211 | }); |
| 212 | } |
no test coverage detected