diff --git a/README.md b/README.md index 8c16075ef..34c96af51 100644 --- a/README.md +++ b/README.md @@ -565,6 +565,7 @@ Instruction #### File Selection Options - `--include `: List of include patterns (comma-separated) - `-i, --ignore `: Additional ignore patterns (comma-separated) +- `--ignore-content `: Patterns to include files but skip their content (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Disable .gitignore file usage - `--no-default-patterns`: Disable default patterns @@ -607,6 +608,9 @@ repomix --compress # Process specific files repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Remote repository with branch repomix --remote https://github.com/user/repo/tree/main @@ -959,6 +963,7 @@ Here's an explanation of the configuration options: | `output.git.includeLogs` | Whether to include git logs in the output (includes commit history with dates, messages, and file paths) | `false` | | `output.git.includeLogsCount` | Number of git log commits to include | `50` | | `include` | Patterns of files to include (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Whether to use patterns from the project's `.gitignore` file | `true` | | `ignore.useDefaultPatterns` | Whether to use default ignore patterns | `true` | | `ignore.customPatterns` | Additional patterns to ignore (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | @@ -1004,6 +1009,7 @@ Example configuration: } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/package.json b/package.json index 04bff012e..04cbe0a14 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ }, "bin": "./bin/repomix.cjs", "scripts": { + "prepare": "npm run build", "build": "rimraf lib && tsc -p tsconfig.build.json --sourceMap --declaration", "build-bun": "bun run build", "lint": "node --run lint-biome && node --run lint-oxlint && node --run lint-ts && node --run lint-secretlint", diff --git a/src/cli/actions/defaultAction.ts b/src/cli/actions/defaultAction.ts index d75ff90a0..aa8fefc50 100644 --- a/src/cli/actions/defaultAction.ts +++ b/src/cli/actions/defaultAction.ts @@ -157,6 +157,9 @@ export const buildCliConfig = (options: CliOptions): RepomixConfigCli => { if (options.ignore) { cliConfig.ignore = { customPatterns: splitPatterns(options.ignore) }; } + if (options.ignoreContent) { + cliConfig.ignoreContent = splitPatterns(options.ignoreContent); + } // Only apply gitignore setting if explicitly set to false if (options.gitignore === false) { cliConfig.ignore = { ...cliConfig.ignore, useGitignore: options.gitignore }; diff --git a/src/cli/cliRun.ts b/src/cli/cliRun.ts index 6c2f8bb75..6e7ab0c4a 100644 --- a/src/cli/cliRun.ts +++ b/src/cli/cliRun.ts @@ -105,6 +105,10 @@ export const run = async () => { .optionsGroup('File Selection Options') .option('--include ', 'list of include patterns (comma-separated)') .option('-i, --ignore ', 'additional ignore patterns (comma-separated)') + .option( + '--ignore-content ', + 'patterns to skip file content (comma-separated; prefix with ! to keep paths)', + ) .option('--no-gitignore', 'disable .gitignore file usage') .option('--no-default-patterns', 'disable default patterns') // Remote Repository Options diff --git a/src/cli/types.ts b/src/cli/types.ts index dcc38207e..ebd2dbd54 100644 --- a/src/cli/types.ts +++ b/src/cli/types.ts @@ -30,6 +30,7 @@ export interface CliOptions extends OptionValues { // Filter Options include?: string; ignore?: string; + ignoreContent?: string; gitignore?: boolean; defaultPatterns?: boolean; stdin?: boolean; diff --git a/src/config/configLoad.ts b/src/config/configLoad.ts index 7b0187980..9be52552b 100644 --- a/src/config/configLoad.ts +++ b/src/config/configLoad.ts @@ -130,6 +130,11 @@ export const mergeConfigs = ( ...cliConfig.output, }, include: [...(baseConfig.include || []), ...(fileConfig.include || []), ...(cliConfig.include || [])], + ignoreContent: [ + ...(baseConfig.ignoreContent || []), + ...(fileConfig.ignoreContent || []), + ...(cliConfig.ignoreContent || []), + ], ignore: { ...baseConfig.ignore, ...fileConfig.ignore, diff --git a/src/config/configSchema.ts b/src/config/configSchema.ts index e6bdb3359..7e2ba9dae 100644 --- a/src/config/configSchema.ts +++ b/src/config/configSchema.ts @@ -51,6 +51,7 @@ export const repomixConfigBaseSchema = z.object({ }) .optional(), include: z.array(z.string()).optional(), + ignoreContent: z.array(z.string()).optional(), ignore: z .object({ useGitignore: z.boolean().optional(), @@ -112,6 +113,7 @@ export const repomixConfigDefaultSchema = z.object({ }) .default({}), include: z.array(z.string()).default([]), + ignoreContent: z.array(z.string()).default([]), ignore: z .object({ useGitignore: z.boolean().default(true), diff --git a/src/core/file/fileCollect.ts b/src/core/file/fileCollect.ts index e5f1c2894..70760b5b6 100644 --- a/src/core/file/fileCollect.ts +++ b/src/core/file/fileCollect.ts @@ -1,8 +1,10 @@ +import { minimatch } from 'minimatch'; import pc from 'picocolors'; import type { RepomixConfigMerged } from '../../config/configSchema.js'; import { logger } from '../../shared/logger.js'; import { initTaskRunner } from '../../shared/processConcurrency.js'; import type { RepomixProgressCallback } from '../../shared/types.js'; +import { normalizeGlobPattern } from './fileSearch.js'; import type { RawFile } from './fileTypes.js'; import type { FileCollectResult, FileCollectTask, SkippedFileInfo } from './workers/fileCollectWorker.js'; @@ -28,12 +30,29 @@ export const collectFiles = async ( workerPath: new URL('./workers/fileCollectWorker.js', import.meta.url).href, runtime: 'worker_threads', }); + + const shouldSkipContent = (filePath: string, patterns: string[]): boolean => { + let skip = false; + for (const pattern of patterns) { + const normalizedPattern = normalizeGlobPattern(pattern.startsWith('!') ? pattern.slice(1) : pattern); + if (pattern.startsWith('!')) { + if (minimatch(filePath, normalizedPattern, { dot: true })) { + skip = false; + } + } else if (minimatch(filePath, normalizedPattern, { dot: true })) { + skip = true; + } + } + return skip; + }; + const tasks = filePaths.map( (filePath) => ({ filePath, rootDir, maxFileSize: config.input.maxFileSize, + skipContent: shouldSkipContent(filePath, config.ignoreContent), }) satisfies FileCollectTask, ); diff --git a/src/core/file/fileProcess.ts b/src/core/file/fileProcess.ts index 5a1483412..b2940eb94 100644 --- a/src/core/file/fileProcess.ts +++ b/src/core/file/fileProcess.ts @@ -21,13 +21,14 @@ export const processFiles = async ( getFileManipulator, }, ): Promise => { + const filesToProcess = rawFiles.filter((file) => file.content !== undefined); const taskRunner = deps.initTaskRunner({ - numOfTasks: rawFiles.length, + numOfTasks: filesToProcess.length, workerPath: new URL('./workers/fileProcessWorker.js', import.meta.url).href, // High memory usage and leak risk runtime: 'child_process', }); - const tasks = rawFiles.map( + const tasks = filesToProcess.map( (rawFile, _index) => ({ rawFile, @@ -37,7 +38,7 @@ export const processFiles = async ( try { const startTime = process.hrtime.bigint(); - logger.trace(`Starting file processing for ${rawFiles.length} files using worker pool`); + logger.trace(`Starting file processing for ${filesToProcess.length} files using worker pool`); let completedTasks = 0; const totalTasks = tasks.length; diff --git a/src/core/file/fileProcessContent.ts b/src/core/file/fileProcessContent.ts index 18f3c6568..35a6ddd0f 100644 --- a/src/core/file/fileProcessContent.ts +++ b/src/core/file/fileProcessContent.ts @@ -20,6 +20,9 @@ import { truncateBase64Content } from './truncateBase64.js'; */ export const processContent = async (rawFile: RawFile, config: RepomixConfigMerged): Promise => { const processStartAt = process.hrtime.bigint(); + if (rawFile.content === undefined) { + throw new Error(`No content to process for ${rawFile.path}`); + } let processedContent = rawFile.content; const manipulator = getFileManipulator(rawFile.path); diff --git a/src/core/file/fileTypes.ts b/src/core/file/fileTypes.ts index 5bcbbc771..278ee32a7 100644 --- a/src/core/file/fileTypes.ts +++ b/src/core/file/fileTypes.ts @@ -1,6 +1,6 @@ export interface RawFile { path: string; - content: string; + content?: string; } export interface ProcessedFile { diff --git a/src/core/file/workers/fileCollectWorker.ts b/src/core/file/workers/fileCollectWorker.ts index 875ef337c..0732adc19 100644 --- a/src/core/file/workers/fileCollectWorker.ts +++ b/src/core/file/workers/fileCollectWorker.ts @@ -11,6 +11,7 @@ export interface FileCollectTask { filePath: string; rootDir: string; maxFileSize: number; + skipContent?: boolean; } export interface SkippedFileInfo { @@ -23,8 +24,21 @@ export interface FileCollectResult { skippedFile?: SkippedFileInfo; } -export default async ({ filePath, rootDir, maxFileSize }: FileCollectTask): Promise => { +export default async ({ + filePath, + rootDir, + maxFileSize, + skipContent = false, +}: FileCollectTask): Promise => { const fullPath = path.resolve(rootDir, filePath); + if (skipContent) { + return { + rawFile: { + path: filePath, + }, + }; + } + const result = await readRawFile(fullPath, maxFileSize); if (result.content !== null) { diff --git a/src/core/packager.ts b/src/core/packager.ts index c7c0df7d2..f846599fc 100644 --- a/src/core/packager.ts +++ b/src/core/packager.ts @@ -111,9 +111,10 @@ export const pack = async ( ); // Process files (remove comments, etc.) + const rawFilesForProcessing = safeRawFiles.filter((file) => file.content !== undefined); progressCallback('Processing files...'); const processedFiles = await withMemoryLogging('Process Files', () => - deps.processFiles(safeRawFiles, config, progressCallback), + deps.processFiles(rawFilesForProcessing, config, progressCallback), ); progressCallback('Generating output...'); diff --git a/src/core/security/securityCheck.ts b/src/core/security/securityCheck.ts index 4dd1aa43b..caf15e86a 100644 --- a/src/core/security/securityCheck.ts +++ b/src/core/security/securityCheck.ts @@ -14,7 +14,7 @@ export interface SuspiciousFileResult { } export const runSecurityCheck = async ( - rawFiles: RawFile[], + rawFiles: Array, progressCallback: RepomixProgressCallback = () => {}, gitDiffResult?: GitDiffResult, gitLogResult?: GitLogResult, diff --git a/src/core/security/validateFileSafety.ts b/src/core/security/validateFileSafety.ts index e34ac9da5..9b3bba57d 100644 --- a/src/core/security/validateFileSafety.ts +++ b/src/core/security/validateFileSafety.ts @@ -27,7 +27,10 @@ export const validateFileSafety = async ( if (config.security.enableSecurityCheck) { progressCallback('Running security check...'); - const allResults = await deps.runSecurityCheck(rawFiles, progressCallback, gitDiffResult, gitLogResult); + const filesWithContent = rawFiles.filter( + (file): file is RawFile & { content: string } => file.content !== undefined, + ); + const allResults = await deps.runSecurityCheck(filesWithContent, progressCallback, gitDiffResult, gitLogResult); // Separate Git diff and Git log results from regular file results suspiciousFilesResults = allResults.filter((result) => result.type === 'file'); diff --git a/tests/cli/actions/defaultAction.test.ts b/tests/cli/actions/defaultAction.test.ts index 5401a05fd..16d90fc84 100644 --- a/tests/cli/actions/defaultAction.test.ts +++ b/tests/cli/actions/defaultAction.test.ts @@ -162,6 +162,22 @@ describe('defaultAction', () => { ); }); + it('should handle ignore-content patterns', async () => { + const options: CliOptions = { + ignoreContent: 'components/**,!components/slider/**', + }; + + await runDefaultAction(['.'], process.cwd(), options); + + expect(configLoader.mergeConfigs).toHaveBeenCalledWith( + process.cwd(), + expect.anything(), + expect.objectContaining({ + ignoreContent: ['components/**', '!components/slider/**'], + }), + ); + }); + it('should handle custom output style', async () => { const options: CliOptions = { style: 'xml', diff --git a/tests/config/configSchema.test.ts b/tests/config/configSchema.test.ts index b25f8bec1..2ee23fae8 100644 --- a/tests/config/configSchema.test.ts +++ b/tests/config/configSchema.test.ts @@ -128,6 +128,7 @@ describe('configSchema', () => { useDefaultPatterns: true, customPatterns: [], }, + ignoreContent: [], security: { enableSecurityCheck: true, }, @@ -226,6 +227,7 @@ describe('configSchema', () => { useDefaultPatterns: true, customPatterns: ['*.log'], }, + ignoreContent: [], security: { enableSecurityCheck: true, }, diff --git a/tests/core/file/fileCollect.test.ts b/tests/core/file/fileCollect.test.ts index 356df6d8d..2a23835dc 100644 --- a/tests/core/file/fileCollect.test.ts +++ b/tests/core/file/fileCollect.test.ts @@ -82,6 +82,69 @@ describe('fileCollect', () => { }); }); + it('should skip file content when matching ignoreContent patterns', async () => { + const mockFilePaths = ['docs/readme.md', 'src/index.ts']; + const mockRootDir = '/root'; + const mockConfig = createMockConfig({ ignoreContent: ['docs/**'] }); + + vi.mocked(isBinary).mockReturnValue(false); + vi.mocked(fs.readFile).mockResolvedValue(Buffer.from('file content')); + vi.mocked(jschardet.detect).mockReturnValue({ encoding: 'utf-8', confidence: 0.99 }); + vi.mocked(iconv.decode).mockReturnValue('decoded content'); + + const result = await collectFiles(mockFilePaths, mockRootDir, mockConfig, () => {}, { + initTaskRunner: mockInitTaskRunner, + }); + + expect(result).toEqual({ + rawFiles: [{ path: 'docs/readme.md' }, { path: 'src/index.ts', content: 'decoded content' }], + skippedFiles: [], + }); + expect(fs.readFile).toHaveBeenCalledTimes(1); + }); + + it('should allow negated patterns to override ignoreContent', async () => { + const mockFilePaths = ['components/button.ts', 'components/slider/index.ts']; + const mockRootDir = '/root'; + const mockConfig = createMockConfig({ ignoreContent: ['components/**', '!components/slider/**'] }); + + vi.mocked(isBinary).mockReturnValue(false); + vi.mocked(fs.readFile).mockResolvedValue(Buffer.from('file content')); + vi.mocked(jschardet.detect).mockReturnValue({ encoding: 'utf-8', confidence: 0.99 }); + vi.mocked(iconv.decode).mockReturnValue('decoded content'); + + const result = await collectFiles(mockFilePaths, mockRootDir, mockConfig, () => {}, { + initTaskRunner: mockInitTaskRunner, + }); + + expect(result).toEqual({ + rawFiles: [{ path: 'components/button.ts' }, { path: 'components/slider/index.ts', content: 'decoded content' }], + skippedFiles: [], + }); + expect(fs.readFile).toHaveBeenCalledTimes(1); + }); + + it('should match dotfiles when using ignoreContent patterns', async () => { + const mockFilePaths = ['docs/.env', 'docs/readme.md']; + const mockRootDir = '/root'; + const mockConfig = createMockConfig({ ignoreContent: ['docs/**'] }); + + vi.mocked(isBinary).mockReturnValue(false); + vi.mocked(fs.readFile).mockResolvedValue(Buffer.from('file content')); + vi.mocked(jschardet.detect).mockReturnValue({ encoding: 'utf-8', confidence: 0.99 }); + vi.mocked(iconv.decode).mockReturnValue('decoded content'); + + const result = await collectFiles(mockFilePaths, mockRootDir, mockConfig, () => {}, { + initTaskRunner: mockInitTaskRunner, + }); + + expect(result).toEqual({ + rawFiles: [{ path: 'docs/.env' }, { path: 'docs/readme.md' }], + skippedFiles: [], + }); + expect(fs.readFile).not.toHaveBeenCalled(); + }); + it('should skip binary files', async () => { const mockFilePaths = ['binary.bin', 'text.txt']; const mockRootDir = '/root'; diff --git a/tests/core/security/securityCheck.test.ts b/tests/core/security/securityCheck.test.ts index be010854b..001918743 100644 --- a/tests/core/security/securityCheck.test.ts +++ b/tests/core/security/securityCheck.test.ts @@ -27,7 +27,7 @@ vi.mock('../../../src/shared/processConcurrency', () => ({ })), })); -const mockFiles: RawFile[] = [ +const mockFiles: Array = [ { path: 'test1.js', // secretlint-disable diff --git a/tests/testing/testUtils.ts b/tests/testing/testUtils.ts index f9eecdcfb..fb585ab9c 100644 --- a/tests/testing/testUtils.ts +++ b/tests/testing/testUtils.ts @@ -32,6 +32,7 @@ export const createMockConfig = (config: DeepPartial = {}): ...config.ignore, customPatterns: [...(defaultConfig.ignore.customPatterns || []), ...(config.ignore?.customPatterns || [])], }, + ignoreContent: [...(defaultConfig.ignoreContent || []), ...(config.ignoreContent || [])], include: [...(defaultConfig.include || []), ...(config.include || [])], security: { ...defaultConfig.security, diff --git a/website/client/src/de/guide/command-line-options.md b/website/client/src/de/guide/command-line-options.md index f54ec1558..816755fdf 100644 --- a/website/client/src/de/guide/command-line-options.md +++ b/website/client/src/de/guide/command-line-options.md @@ -35,6 +35,7 @@ ## Dateiauswahloptionen - `--include `: Liste der Einschlussmuster (kommagetrennt) - `-i, --ignore `: Zusätzliche Ignoriermuster (kommagetrennt) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: .gitignore-Datei-Nutzung deaktivieren - `--no-default-patterns`: Standardmuster deaktivieren @@ -75,6 +76,9 @@ repomix --compress # Spezifische Dateien verarbeiten repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Remote-Repository mit Branch repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/de/guide/configuration.md b/website/client/src/de/guide/configuration.md index 08f7b80a1..d880bade3 100644 --- a/website/client/src/de/guide/configuration.md +++ b/website/client/src/de/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Ob Git-Logs in der Ausgabe enthalten sein sollen. Zeigt Commit-Historie mit Daten, Nachrichten und Dateipfaden an | `false` | | `output.git.includeLogsCount` | Anzahl der Git-Log-Commits, die in die Ausgabe einbezogen werden sollen | `50` | | `include` | Zu einschließende Dateimuster (verwendet [glob-Muster](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Ob Muster aus der `.gitignore`-Datei des Projekts verwendet werden sollen | `true` | | `ignore.useDefaultPatterns` | Ob Standard-Ignorier-Muster (node_modules, .git etc.) verwendet werden sollen | `true` | | `ignore.customPatterns` | Zusätzliche Ignorier-Muster (verwendet [glob-Muster](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | @@ -105,6 +106,7 @@ Hier ist ein Beispiel einer vollständigen Konfigurationsdatei (`repomix.config. } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/en/guide/command-line-options.md b/website/client/src/en/guide/command-line-options.md index f45470fca..477853b1f 100644 --- a/website/client/src/en/guide/command-line-options.md +++ b/website/client/src/en/guide/command-line-options.md @@ -35,6 +35,7 @@ ## File Selection Options - `--include `: List of include patterns (comma-separated) - `-i, --ignore `: Additional ignore patterns (comma-separated) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Disable .gitignore file usage - `--no-default-patterns`: Disable default patterns @@ -73,6 +74,9 @@ repomix --compress # Process specific files repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Remote repository with branch repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/en/guide/configuration.md b/website/client/src/en/guide/configuration.md index 82b2e8661..21994aa02 100644 --- a/website/client/src/en/guide/configuration.md +++ b/website/client/src/en/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Whether to include git logs in the output. Shows commit history with dates, messages, and file paths | `false` | | `output.git.includeLogsCount` | Number of git log commits to include in the output | `50` | | `include` | Patterns of files to include using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Whether to use patterns from the project's `.gitignore` file | `true` | | `ignore.useDefaultPatterns` | Whether to use default ignore patterns (node_modules, .git, etc.) | `true` | | `ignore.customPatterns` | Additional patterns to ignore using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | @@ -105,6 +106,7 @@ Here's an example of a complete configuration file (`repomix.config.json`): } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/es/guide/command-line-options.md b/website/client/src/es/guide/command-line-options.md index eb89286f0..61ad10e08 100644 --- a/website/client/src/es/guide/command-line-options.md +++ b/website/client/src/es/guide/command-line-options.md @@ -35,6 +35,7 @@ ## Opciones de selección de archivos - `--include `: Lista de patrones de inclusión (separados por comas) - `-i, --ignore `: Patrones de ignorar adicionales (separados por comas) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Deshabilitar uso de archivo .gitignore - `--no-default-patterns`: Deshabilitar patrones por defecto @@ -75,6 +76,9 @@ repomix --compress # Procesar archivos específicos repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Repositorio remoto con rama repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/es/guide/configuration.md b/website/client/src/es/guide/configuration.md index f733c9f7f..1f0f3f58e 100644 --- a/website/client/src/es/guide/configuration.md +++ b/website/client/src/es/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Indica si se deben incluir los logs de git en la salida. Muestra el historial de commits con fechas, mensajes y rutas de archivos | `false` | | `output.git.includeLogsCount` | Número de commits de log de git a incluir en la salida | `50` | | `include` | Patrones de archivos a incluir usando [patrones glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Indica si se deben usar los patrones del archivo `.gitignore` del proyecto | `true` | | `ignore.useDefaultPatterns` | Indica si se deben usar los patrones de ignorar predeterminados (node_modules, .git, etc.) | `true` | | `ignore.customPatterns` | Patrones adicionales para ignorar usando [patrones glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | @@ -105,6 +106,7 @@ Aquí hay un ejemplo de un archivo de configuración completo (`repomix.config.j } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/fr/guide/command-line-options.md b/website/client/src/fr/guide/command-line-options.md index 334d3f0a9..e33bbe25d 100644 --- a/website/client/src/fr/guide/command-line-options.md +++ b/website/client/src/fr/guide/command-line-options.md @@ -35,6 +35,7 @@ ## Options de sélection de fichiers - `--include `: Liste des motifs d'inclusion (séparés par des virgules) - `-i, --ignore `: Motifs d'ignorance supplémentaires (séparés par des virgules) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Désactiver l'utilisation du fichier .gitignore - `--no-default-patterns`: Désactiver les motifs par défaut @@ -75,6 +76,9 @@ repomix --compress # Traiter des fichiers spécifiques repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Dépôt distant avec branche repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/fr/guide/configuration.md b/website/client/src/fr/guide/configuration.md index 017eacf27..9c4527095 100644 --- a/website/client/src/fr/guide/configuration.md +++ b/website/client/src/fr/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Indique s'il faut inclure les journaux git dans la sortie. Montre l'historique des commits avec les dates, les messages et les chemins de fichiers | `false` | | `output.git.includeLogsCount` | Nombre de commits de journaux git récents à inclure dans la sortie | `50` | | `include` | Motifs des fichiers à inclure en utilisant les [motifs glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Indique s'il faut utiliser les motifs du fichier `.gitignore` du projet | `true` | | `ignore.useDefaultPatterns` | Indique s'il faut utiliser les motifs d'ignorance par défaut (node_modules, .git, etc.) | `true` | | `ignore.customPatterns` | Motifs supplémentaires à ignorer en utilisant les [motifs glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | @@ -105,6 +106,7 @@ Voici un exemple de fichier de configuration complet (`repomix.config.json`) : } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/hi/guide/command-line-options.md b/website/client/src/hi/guide/command-line-options.md index 162b02ebf..d5dd8710c 100644 --- a/website/client/src/hi/guide/command-line-options.md +++ b/website/client/src/hi/guide/command-line-options.md @@ -35,6 +35,7 @@ ## फ़ाइल चयन विकल्प - `--include `: शामिल पैटर्न की सूची (कॉमा-अलग) - `-i, --ignore `: अतिरिक्त अनदेखा पैटर्न (कॉमा-अलग) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: .gitignore फ़ाइल उपयोग अक्षम करें - `--no-default-patterns`: डिफ़ॉल्ट पैटर्न अक्षम करें @@ -75,6 +76,9 @@ repomix --compress # विशिष्ट फ़ाइलों को प्रोसेस करना repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # ब्रांच के साथ रिमोट रिपॉजिटरी repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/hi/guide/configuration.md b/website/client/src/hi/guide/configuration.md index 053d22d77..d8b5c2e32 100644 --- a/website/client/src/hi/guide/configuration.md +++ b/website/client/src/hi/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | आउटपुट में Git logs शामिल करना है या नहीं। कमिट तारीखों, संदेशों और फ़ाइल पथों को दिखाता है | `false` | | `output.git.includeLogsCount` | आउटपुट में शामिल करने के लिए git log कमिट की संख्या | `50` | | `include` | शामिल करने के लिए फ़ाइल पैटर्न [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) का उपयोग करके | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | प्रोजेक्ट की `.gitignore` फ़ाइल के पैटर्न का उपयोग करना है या नहीं | `true` | | `ignore.useDefaultPatterns` | डिफ़ॉल्ट ignore पैटर्न (node_modules, .git, आदि) का उपयोग करना है या नहीं | `true` | | `ignore.customPatterns` | अतिरिक्त ignore पैटर्न [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) का उपयोग करके | `[]` | @@ -105,6 +106,7 @@ repomix --init --global } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/id/guide/command-line-options.md b/website/client/src/id/guide/command-line-options.md index 991cd761b..5bba561d9 100644 --- a/website/client/src/id/guide/command-line-options.md +++ b/website/client/src/id/guide/command-line-options.md @@ -35,6 +35,7 @@ ## Opsi Seleksi File - `--include `: Daftar pola penyertaan (dipisahkan koma) - `-i, --ignore `: Pola pengabaian tambahan (dipisahkan koma) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Menonaktifkan penggunaan file .gitignore - `--no-default-patterns`: Menonaktifkan pola default @@ -75,6 +76,9 @@ repomix --compress # Memproses file tertentu repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Repositori remote dengan branch repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/id/guide/configuration.md b/website/client/src/id/guide/configuration.md index 83c178993..881b8b54b 100644 --- a/website/client/src/id/guide/configuration.md +++ b/website/client/src/id/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Apakah akan menyertakan log git dalam output. Menampilkan riwayat commit dengan tanggal, pesan, dan jalur file | `false` | | `output.git.includeLogsCount` | Jumlah commit log git yang akan disertakan dalam output | `50` | | `include` | Pola file untuk disertakan menggunakan [pola glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Apakah akan menggunakan pola dari file `.gitignore` proyek | `true` | | `ignore.useDefaultPatterns` | Apakah akan menggunakan pola ignore default (node_modules, .git, dll.) | `true` | | `ignore.customPatterns` | Pola tambahan untuk diabaikan menggunakan [pola glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | @@ -105,6 +106,7 @@ Berikut adalah contoh file konfigurasi lengkap (`repomix.config.json`): } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/ja/guide/command-line-options.md b/website/client/src/ja/guide/command-line-options.md index f3d9864f0..8a9fd497e 100644 --- a/website/client/src/ja/guide/command-line-options.md +++ b/website/client/src/ja/guide/command-line-options.md @@ -35,6 +35,7 @@ ## ファイル選択オプション - `--include `: 含めるパターンのリスト(カンマ区切り) - `-i, --ignore `: 追加の除外パターン(カンマ区切り) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: .gitignoreファイルの使用を無効化 - `--no-default-patterns`: デフォルトパターンを無効化 @@ -80,6 +81,9 @@ repomix --include-diffs --include-logs # 差分とログの両方を含める # 特定のファイルを処理 repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # ブランチを指定したリモートリポジトリ repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/ja/guide/configuration.md b/website/client/src/ja/guide/configuration.md index 6ce3a61ce..e4aec84d1 100644 --- a/website/client/src/ja/guide/configuration.md +++ b/website/client/src/ja/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | 出力にGitログを含めるかどうか。コミット履歴の日時、メッセージ、ファイルパスを表示します | `false` | | `output.git.includeLogsCount` | 含めるGitログのコミット数。開発パターンを理解するための履歴の深さを制限します | `50` | | `include` | 含めるファイルのパターン([globパターン](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)を使用) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | プロジェクトの`.gitignore`ファイルのパターンを使用するかどうか | `true` | | `ignore.useDefaultPatterns` | デフォルトの除外パターン(node_modules、.gitなど)を使用するかどうか | `true` | | `ignore.customPatterns` | 追加の除外パターン([globパターン](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)を使用) | `[]` | @@ -105,6 +106,7 @@ repomix --init --global } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/ko/guide/command-line-options.md b/website/client/src/ko/guide/command-line-options.md index 700f9a6b6..9650fccb7 100644 --- a/website/client/src/ko/guide/command-line-options.md +++ b/website/client/src/ko/guide/command-line-options.md @@ -35,6 +35,7 @@ ## 파일 선택 옵션 - `--include `: 포함 패턴 목록 (쉼표로 구분) - `-i, --ignore `: 추가 무시 패턴 (쉼표로 구분) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: .gitignore 파일 사용 비활성화 - `--no-default-patterns`: 기본 패턴 비활성화 @@ -80,6 +81,9 @@ repomix --include-diffs --include-logs # 차이점과 로그 모두 포함 # 특정 파일 처리 repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # 브랜치가 있는 원격 저장소 repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/ko/guide/configuration.md b/website/client/src/ko/guide/configuration.md index f63c5626e..455dea216 100644 --- a/website/client/src/ko/guide/configuration.md +++ b/website/client/src/ko/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | 출력에 Git 로그를 포함할지 여부. 커밋 히스토리의 날짜, 메시지, 파일 경로를 표시합니다 | `false` | | `output.git.includeLogsCount` | 포함할 Git 로그 커밋 수. 개발 패턴을 이해하기 위한 히스토리 깊이를 제한합니다 | `50` | | `include` | 포함할 파일 패턴([glob 패턴](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) 사용) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | 프로젝트의 `.gitignore` 파일의 패턴을 사용할지 여부 | `true` | | `ignore.useDefaultPatterns` | 기본 무시 패턴(node_modules, .git 등)을 사용할지 여부 | `true` | | `ignore.customPatterns` | 추가 무시 패턴([glob 패턴](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) 사용) | `[]` | @@ -105,6 +106,7 @@ repomix --init --global } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/pt-br/guide/command-line-options.md b/website/client/src/pt-br/guide/command-line-options.md index fd200da69..3ffee0860 100644 --- a/website/client/src/pt-br/guide/command-line-options.md +++ b/website/client/src/pt-br/guide/command-line-options.md @@ -35,6 +35,7 @@ ## Opções de Seleção de Arquivos - `--include `: Lista de padrões de inclusão (separados por vírgula) - `-i, --ignore `: Padrões de ignorar adicionais (separados por vírgula) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Desabilitar uso do arquivo .gitignore - `--no-default-patterns`: Desabilitar padrões padrão @@ -75,6 +76,9 @@ repomix --compress # Processar arquivos específicos repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Repositório remoto com branch repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/pt-br/guide/configuration.md b/website/client/src/pt-br/guide/configuration.md index 4a3795166..ffb467671 100644 --- a/website/client/src/pt-br/guide/configuration.md +++ b/website/client/src/pt-br/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Indica se deve incluir logs do git na saída. Mostra histórico de commits com datas, mensagens e caminhos de arquivos | `false` | | `output.git.includeLogsCount` | Número de commits do log do git para incluir na saída | `50` | | `include` | Padrões de arquivos para incluir usando [padrões glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Indica se deve usar os padrões do arquivo `.gitignore` do projeto | `true` | | `ignore.useDefaultPatterns` | Indica se deve usar os padrões de ignorar padrão (node_modules, .git, etc.) | `true` | | `ignore.customPatterns` | Padrões adicionais para ignorar usando [padrões glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | @@ -105,6 +106,7 @@ Aqui está um exemplo de um arquivo de configuração completo (`repomix.config. } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/vi/guide/command-line-options.md b/website/client/src/vi/guide/command-line-options.md index 79c7e2c27..310a0cf90 100644 --- a/website/client/src/vi/guide/command-line-options.md +++ b/website/client/src/vi/guide/command-line-options.md @@ -35,6 +35,7 @@ ## Tùy chọn Lựa chọn Tệp - `--include `: Danh sách các mẫu bao gồm (phân tách bằng dấu phẩy) - `-i, --ignore `: Các mẫu bỏ qua bổ sung (phân tách bằng dấu phẩy) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: Tắt việc sử dụng tệp .gitignore - `--no-default-patterns`: Tắt các mẫu mặc định @@ -75,6 +76,9 @@ repomix --compress # Xử lý tệp cụ thể repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # Kho lưu trữ từ xa với nhánh repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/vi/guide/configuration.md b/website/client/src/vi/guide/configuration.md index 967bdba11..9c689bca1 100644 --- a/website/client/src/vi/guide/configuration.md +++ b/website/client/src/vi/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | Có nên bao gồm nhật ký git trong đầu ra hay không. Hiển thị lịch sử commit với ngày tháng, thông điệp và đường dẫn tệp | `false` | | `output.git.includeLogsCount` | Số lượng commit git logs để bao gồm trong đầu ra | `50` | | `include` | Các mẫu file để bao gồm sử dụng [mẫu glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | Có nên sử dụng các mẫu từ file `.gitignore` của dự án hay không | `true` | | `ignore.useDefaultPatterns` | Có nên sử dụng các mẫu ignore mặc định (node_modules, .git, v.v.) hay không | `true` | | `ignore.customPatterns` | Các mẫu bổ sung để ignore sử dụng [mẫu glob](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax) | `[]` | @@ -105,6 +106,7 @@ Bạn có thể bật xác thực schema cho file cấu hình của mình bằng } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/zh-cn/guide/command-line-options.md b/website/client/src/zh-cn/guide/command-line-options.md index 66e7a8a10..73debbd3a 100644 --- a/website/client/src/zh-cn/guide/command-line-options.md +++ b/website/client/src/zh-cn/guide/command-line-options.md @@ -35,6 +35,7 @@ ## 文件选择选项 - `--include `: 包含模式列表(逗号分隔) - `-i, --ignore `: 附加忽略模式(逗号分隔) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: 禁用.gitignore文件使用 - `--no-default-patterns`: 禁用默认模式 @@ -80,6 +81,9 @@ repomix --include-diffs --include-logs # 同时包含差异和日志 # 处理特定文件 repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # 带分支的远程仓库 repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/zh-cn/guide/configuration.md b/website/client/src/zh-cn/guide/configuration.md index abce81b39..87c3df8b5 100644 --- a/website/client/src/zh-cn/guide/configuration.md +++ b/website/client/src/zh-cn/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | 是否在输出中包含Git日志。显示提交历史的日期、消息和文件路径 | `false` | | `output.git.includeLogsCount` | 要包含的Git日志提交数量。限制历史深度以了解开发模式 | `50` | | `include` | 要包含的文件模式(使用[glob模式](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | 是否使用项目的`.gitignore`文件中的模式 | `true` | | `ignore.useDefaultPatterns` | 是否使用默认忽略模式(node_modules、.git等) | `true` | | `ignore.customPatterns` | 额外的忽略模式(使用[glob模式](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | @@ -105,6 +106,7 @@ repomix --init --global } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true, diff --git a/website/client/src/zh-tw/guide/command-line-options.md b/website/client/src/zh-tw/guide/command-line-options.md index 44c8cf0a6..de60e0d5b 100644 --- a/website/client/src/zh-tw/guide/command-line-options.md +++ b/website/client/src/zh-tw/guide/command-line-options.md @@ -35,6 +35,7 @@ ## 檔案選擇選項 - `--include `: 包含模式清單(逗號分隔) - `-i, --ignore `: 附加忽略模式(逗號分隔) +- `--ignore-content `: Skip file content for matched patterns (comma-separated; prefix with `!` to keep specific paths) - `--no-gitignore`: 停用.gitignore檔案使用 - `--no-default-patterns`: 停用預設模式 @@ -75,6 +76,9 @@ repomix --compress # 處理特定檔案 repomix --include "src/**/*.ts" --ignore "**/*.test.ts" +# Ignore file contents for matching patterns +repomix --ignore-content "components/**,!components/slider/**" + # 帶分支的遠端儲存庫 repomix --remote https://github.com/user/repo/tree/main diff --git a/website/client/src/zh-tw/guide/configuration.md b/website/client/src/zh-tw/guide/configuration.md index 0ae24290e..4ae21e9fe 100644 --- a/website/client/src/zh-tw/guide/configuration.md +++ b/website/client/src/zh-tw/guide/configuration.md @@ -42,6 +42,7 @@ repomix --init --global | `output.git.includeLogs` | 是否在輸出中包含Git記錄。顯示提交歷史包括日期、訊息和檔案路徑 | `false` | | `output.git.includeLogsCount` | 在輸出中包含的git記錄提交數量 | `50` | | `include` | 要包含的檔案模式(使用[glob模式](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | +| `ignoreContent` | Patterns of files whose content should be ignored (using [glob patterns](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)); prefix with `!` to keep specific paths | `[]` | | `ignore.useGitignore` | 是否使用專案的`.gitignore`檔案中的模式 | `true` | | `ignore.useDefaultPatterns` | 是否使用預設忽略模式(node_modules、.git等) | `true` | | `ignore.customPatterns` | 額外的忽略模式(使用[glob模式](https://github.com/mrmlnc/fast-glob?tab=readme-ov-file#pattern-syntax)) | `[]` | @@ -105,6 +106,7 @@ repomix --init --global } }, "include": ["**/*"], + "ignoreContent": ["components/**", "!components/slider/**"], "ignore": { "useGitignore": true, "useDefaultPatterns": true,