remcode
Version:
Turn your AI assistant into a codebase expert. Intelligent code analysis, semantic search, and software engineering guidance through MCP integration.
42 lines (41 loc) • 1.22 kB
TypeScript
import { FileChange } from './types';
export declare class ChangeDetector {
private repoPath;
constructor(repoPath?: string);
/**
* Check if the directory is a git repository
*/
private isGitRepository;
/**
* Get the current HEAD commit hash
*/
getCurrentCommit(): string;
/**
* Check if a commit exists in the repository
*/
commitExists(commit: string): boolean;
/**
* Get list of changed files between two commits
*/
getChangedFiles(fromCommit: string, toCommit?: string): Promise<FileChange[]>;
/**
* Add additional file information
*/
private enrichFileInfo;
/**
* Check if there are any changes between two commits
*/
hasChanges(fromCommit: string, toCommit?: string): Promise<boolean>;
/**
* Get a list of modified lines for a specific file
*/
getModifiedLines(filePath: string, fromCommit: string, toCommit?: string): Promise<number[]>;
/**
* Filter for only code files
*/
filterCodeFiles(changes: FileChange[]): Promise<FileChange[]>;
/**
* Get list of ignored files and directories from .gitignore
*/
getIgnoredPaths(): Promise<string[]>;
}