Skip to main content
previewMerge() is read-only. It checks the merge result with a git:read scoped request and does not create commits or update refs. Pass includeContent when you want inline conflict blob content. The response still includes conflictPaths when content is omitted or filtered.

Options

string
required
Source branch name to merge from.
string
required
Target branch name to merge into.
boolean
Include bounded conflict blob content in conflicts when the preview is conflicted. Python: include_content. Go: IncludeContent as *bool.
number
Token TTL for this invocation in seconds. In Go, use TTL as a time.Duration.

Response

Field names below use TypeScript casing. Python returns snake_case keys and Go returns exported struct fields.
string
Preview status: clean or conflicted.
string
Merge outcome if applied: merge_commit, fast_forward, or no_op.
string
Resolved source branch name.
string
Resolved target branch name.
string
Source branch tip SHA used for the preview.
string
Target branch tip SHA used for the preview.
string
Merge base SHA when the backend reports one.
string[]
Paths that would conflict if the merge were applied.
object[]
Inline conflict details for each returned path. Each item has path, result, base, ours, and theirs fields. ours is the target branch stage and theirs is the source branch stage. Blob fields include oid, content, truncated, and binary.
object[]
Conflicted paths whose inline content was omitted. Each item has path and reason, such as max_conflict_files_exceeded.

Notes

  • conflicts is empty when includeContent is omitted or set to false.
  • filteredConflicts tells you which conflicted files were left out of the inline preview and why.
  • Use merge() after a clean preview when you are ready to update the target branch.