UNPKG

@grec0/mcp-svn

Version:

MCP server para integración completa con Subversion (SVN)

82 lines 2.84 kB
import { SvnConfig, SvnResponse, SvnInfo, SvnStatus, SvnLogEntry, SvnCheckoutOptions, SvnUpdateOptions, SvnCommitOptions, SvnAddOptions, SvnDeleteOptions } from '../common/types.js'; export declare class SvnService { private config; constructor(config?: Partial<SvnConfig>); /** * Función auxiliar para manejar errores comunes de SVN */ private handleSvnError; /** * Verificar que SVN está disponible y configurado correctamente */ healthCheck(): Promise<SvnResponse<{ svnAvailable: boolean; version?: string; workingCopyValid?: boolean; repositoryAccessible?: boolean; }>>; /** * Obtener información del working copy o directorio específico */ getInfo(path?: string): Promise<SvnResponse<SvnInfo>>; /** * Obtener estado de archivos en el working copy */ getStatus(path?: string, showAll?: boolean): Promise<SvnResponse<SvnStatus[]>>; /** * Obtener historial de cambios (log) */ getLog(path?: string, limit?: number, revision?: string): Promise<SvnResponse<SvnLogEntry[]>>; /** * Obtener diferencias entre versiones */ getDiff(path?: string, oldRevision?: string, newRevision?: string): Promise<SvnResponse<string>>; /** * Checkout de un repositorio */ checkout(url: string, path?: string, options?: SvnCheckoutOptions): Promise<SvnResponse<string>>; /** * Actualizar working copy */ update(path?: string, options?: SvnUpdateOptions): Promise<SvnResponse<string>>; /** * Añadir archivos al control de versiones */ add(paths: string | string[], options?: SvnAddOptions): Promise<SvnResponse<string>>; /** * Confirmar cambios al repositorio */ commit(options: SvnCommitOptions, paths?: string[]): Promise<SvnResponse<string>>; /** * Eliminar archivos del control de versiones */ delete(paths: string | string[], options?: SvnDeleteOptions): Promise<SvnResponse<string>>; /** * Revertir cambios locales */ revert(paths: string | string[]): Promise<SvnResponse<string>>; /** * Limpiar working copy */ cleanup(path?: string): Promise<SvnResponse<string>>; /** * Diagnóstico específico para comandos problemáticos */ diagnoseCommands(): Promise<SvnResponse<{ statusLocal: boolean; statusRemote: boolean; logBasic: boolean; workingCopyPath: string; errors: string[]; suggestions: string[]; }>>; /** * Categorizar errores y proporcionar sugerencias específicas */ private categorizeError; /** * Limpiar cache de credenciales SVN para resolver errores de autenticación */ clearCredentials(): Promise<SvnResponse>; } //# sourceMappingURL=svn-service.d.ts.map