Skip to content

@lancedb/lancedbDocs


@lancedb/lancedb / Branches

Class: Branches

Branch manager for a Table.

Unlike tags, create and checkout return a new Table handle scoped to the branch; writes on it do not affect main.

Methods

checkout()

checkout(name, version?): Promise<Table>

Check out an existing branch and return a handle scoped to it.

With version set, the returned handle is pinned to that version of the branch (a read-only, detached view); otherwise it tracks the branch's latest and stays writable.

Parameters

  • name: string

  • version?: number

Returns

Promise<Table>


create()

create(
   name,
   fromRef?,
   fromVersion?): Promise<Table>

Create a branch and return a handle scoped to it.

Parameters

  • name: string Name of the new branch.

  • fromRef?: string Source branch to fork from. Defaults to main.

  • fromVersion?: number A specific version on fromRef. Defaults to latest.

Returns

Promise<Table>


delete()

delete(name): Promise<void>

Delete a branch.

Parameters

  • name: string

Returns

Promise<void>


list()

list(): Promise<Record<string, BranchContents>>

List all branches, mapping name to branch metadata.

Returns

Promise<Record<string, BranchContents>>