template-syncer
Version:
智能模板同步工具 - 让你的项目与模板仓库保持同步,支持智能合并、差异对比和交互式更新
117 lines • 2.64 kB
TypeScript
import { FileConfig, TemplateSyncerOptions, BatchResults } from './types';
/**
* 智能模板同步工具
* 用于将项目与模板仓库保持同步
*/
export declare class TemplateSyncer {
private tempDir;
private templateRepo;
private branch;
private configFile;
private changes;
private verbose;
private ignorePatterns;
private fileTypeConfig;
private specialFiles;
constructor(options?: TemplateSyncerOptions);
/**
* 创建 Git 备份
*/
createBackup(): void;
/**
* 克隆模板仓库
*/
cloneTemplate(): Promise<void>; /**
* 获取或设置模板仓库
*/
getTemplateRepo(): Promise<string>;
/**
* 测试仓库连接
*/
testRepository(repo: string): Promise<boolean>;
/**
* 扫描模板文件
*/
scanTemplateFiles(): Promise<FileConfig[]>;
/**
* 扫描当前项目文件
*/
scanCurrentFiles(): Promise<FileConfig[]>;
/**
* 分析文件类型和特征
*/
private analyzeFile;
/**
* 对比文件并生成变更列表
*/
compareFiles(templateFiles: FileConfig[], currentFiles: FileConfig[]): Promise<FileConfig[]>;
/**
* 交互式选择要应用的变更
*/
selectChangesToApply(changes: FileConfig[]): Promise<FileConfig[]>;
/**
* 按分类选择文件
*/
private selectByCategory;
/**
* 逐一选择文件
*/
private selectIndividually;
/**
* 批量更新文件
*/
batchUpdateFiles(files: FileConfig[]): Promise<BatchResults>;
/**
* 更新单个文件
*/
private updateSingleFile;
/**
* 智能合并 package.json
*/
private mergePackageJson;
/**
* 显示操作摘要
*/
showSummary(results: BatchResults): void;
/**
* 清理临时文件
*/
cleanup(): void;
/**
* 加载配置文件
*/
private loadConfig;
/**
* 保存配置文件
*/
private saveConfig;
/**
* 主同步流程
*/
sync(options?: TemplateSyncerOptions): Promise<void>;
/**
* 初始化配置向导
*/
initConfig(): Promise<void>;
/**
* 批量处理模式
*/
batchProcess(): Promise<void>;
/**
* 生成智能推荐
*/
private generateRecommendations;
/**
* 预览所有差异
*/
previewAllDifferences(files: FileConfig[]): Promise<void>;
/**
* 智能同步模式
*/
intelligentSync(): Promise<void>;
/**
* 选择分支
*/
private selectBranch;
}
//# sourceMappingURL=index.d.ts.map