19 lines
838 B
TypeScript
19 lines
838 B
TypeScript
// Git-related behaviors that depend on user settings.
|
|
//
|
|
// This lives outside git.ts because git.ts is in the vscode extension's
|
|
// dep graph and must stay free of settings.ts, which transitively pulls
|
|
// @opentelemetry/api + undici (forbidden in vscode). It's also a cycle:
|
|
// settings.ts → git/gitignore.ts → git.ts, so git.ts → settings.ts loops.
|
|
//
|
|
// If you're tempted to add `import settings` to git.ts — don't. Put it here.
|
|
|
|
import { isEnvDefinedFalsy, isEnvTruthy } from './envUtils.js'
|
|
import { getInitialSettings } from './settings/settings.js'
|
|
|
|
export function shouldIncludeGitInstructions(): boolean {
|
|
const envVal = process.env.CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS
|
|
if (isEnvTruthy(envVal)) return false
|
|
if (isEnvDefinedFalsy(envVal)) return true
|
|
return getInitialSettings().includeGitInstructions ?? true
|
|
}
|