gitdb-database
Version:
A production-ready CLI tool for managing a NoSQL database using GitHub repositories as storage
50 lines • 1.49 kB
TypeScript
export interface VersionInfo {
version: string;
commit: string;
timestamp: string;
author: string;
message: string;
changes: string[];
}
export interface RollbackOptions {
toVersion?: string;
toCommit?: string;
dryRun?: boolean;
force?: boolean;
}
export declare class VersioningManager {
private octokit;
private owner;
private repo;
private branch;
constructor(token: string, owner: string, repo: string);
/**
* Get version history for a collection
*/
getVersionHistory(collection: string): Promise<VersionInfo[]>;
/**
* Rollback a collection to a specific version
*/
rollbackCollection(collection: string, options: RollbackOptions): Promise<boolean>;
/**
* Create a versioned commit with custom metadata
*/
createVersionedCommit(collection: string, content: any, message: string, author?: {
name: string;
email: string;
}): Promise<string>;
/**
* Get differences between two versions
*/
getVersionDiff(collection: string, fromVersion: string, toVersion: string): Promise<any>;
/**
* Tag a specific version for easy reference
*/
tagVersion(collection: string, version: string, tagName: string): Promise<void>;
private generateVersion;
private generateVersionFromCommit;
private parseCommitMessage;
private findCommitByVersion;
private getContentAtCommit;
}
//# sourceMappingURL=versioning.d.ts.map