CLI reference / Branches and copies

CLI reference

Branches and copies

wiele branch and wiele copy: create, share, compare and merge branches.

A branch, also called a copy, is a separate line of work in a workspace. main is the branch everyone shares. Reading a folder is enough to create a branch from it; merging into main needs write access to every changed path. See Conflicts and merging for the full merge flow.

wiele branch

Show a branch, or change its sharing when you pass --visibility or --collaborator-access.

wiele branch <subcommand> [flags] [<branch>]
Argument Description
<branch> Optional. Branch name or ID. Without it, run one of the subcommands below.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--visibility public|private public shares the branch with everyone who can read its files; private limits it to collaborators.
--collaborator-access read|write Whether eligible collaborators can read or also write the branch.
--idempotency-key string UUIDv7 for a settings change. Generated when omitted.

wiele branch list

List the workspace's branches you can see.

wiele branch list [flags]
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--after string Page after this branch, from the previous page.

wiele branch show

Show a branch: head and base revisions, visibility, collaborator access, your role, version and policy epoch.

wiele branch show [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--head string Only for wiele branch history. show refuses it.
--after string Only for wiele branch history. show refuses it.

wiele branch history

List the branch's revisions, newest first.

wiele branch history [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--head string Pin paging to this head revision.
--after string Page after this revision, from the previous page.

wiele branch compare

List the files and folders that differ between a branch and another branch.

wiele branch compare [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--to string Branch to compare with.
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.

wiele branch merge-plan

Plan merging a branch: every change, every conflict and whether you can merge.

wiele branch merge-plan [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--into string Branch to merge into.
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.

wiele branch merge plan

Same as merge-plan, with the branches given as flags. Prints the plan and saves nothing.

wiele branch merge plan [flags]
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--source string Required. Branch to merge.
--target string Branch to merge into. Default: main.

wiele branch merge approve

Merge a branch with a draft saved by wiele conflict list --save, then wait for the merge to commit.

wiele branch merge approve [flags]
Flag Description
--workspace string Required. Workspace ID, such as ws_..., from wiele workspace list. This command does not look up names or slugs.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--approval string Required. Merge draft file saved by wiele conflict list --save and updated by wiele conflict resolve.
--idempotency-key string UUIDv7 for the merge. Keep it to replay the same merge safely after a timeout.
--wait string How long to wait for the operation to finish, such as 30s or 2m, from 0ms to 24h. Default: 30s.
--no-wait Return as soon as the server accepts the request.

wiele branch create

Create a branch from main or another branch. Your checkout stays on its branch until you run branch switch.

wiele branch create [flags] [<name>]
Argument Description
<name> Optional. Branch name. Without it, the name follows your branch-name-template setting.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--from-branch string, --from string Branch to start from. --from is the same flag. Default: main.
--scope string Folder or file the branch starts from, such as /proposals. Default: /.
--visibility public|private public shares the branch with everyone who can read its files; private limits it to collaborators. Default: public.
--collaborator-access read|write Whether eligible collaborators can read or also write the branch. Default: read.
--idempotency-key string UUIDv7 that makes the request safe to retry. Each run generates one; pass the same key to replay a request after a timeout.
--wait string How long to wait for the operation to finish, such as 30s or 2m, from 0ms to 24h. Default: 30s.
--no-wait Return as soon as the server accepts the request.

wiele branch switch

Move a checkout to another branch. Needs a clean checkout with sync paused and live off.

wiele branch switch [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--directory string Checkout folder. Default: the current folder.

wiele branch settings

Change a branch's visibility and collaborator access together.

wiele branch settings [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--epoch integer Required. The organization's current policy epoch, from wiele org show or wiele access show. Read it again after any access change.
--version integer Required. The branch's current version, from wiele branch show.
--idempotency-key string UUIDv7 that makes the request safe to retry. Each run generates one; pass the same key to replay a request after a timeout.
--visibility public|private Required. public or private.
--collaborator-access read|write Required. read or write.

wiele branch archive

Archive a branch. It leaves listings and can no longer change. Its history stays.

wiele branch archive [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--epoch integer Required. The organization's current policy epoch, from wiele org show or wiele access show. Read it again after any access change.
--version integer Required. The branch's current version, from wiele branch show.
--idempotency-key string UUIDv7 that makes the request safe to retry. Each run generates one; pass the same key to replay a request after a timeout.

wiele branch collaborator

Add a collaborator to a branch, change their role or remove them.

wiele branch collaborator [flags] <branch>
Argument Description
<branch> Branch name or ID.
Flag Description
--workspace string Workspace ID, slug or name. Not needed inside a checkout or when the path is written as WORKSPACE:/path.
--org string Organization ID or slug. Default: the checkout's organization when the workspace comes from the checkout, otherwise the one picked with wiele org use.
--epoch integer Required. The organization's current policy epoch, from wiele org show or wiele access show. Read it again after any access change.
--version integer Required. The branch's current version, from wiele branch show.
--idempotency-key string UUIDv7 that makes the request safe to retry. Each run generates one; pass the same key to replay a request after a timeout.
--user string Required. User ID of the collaborator, from wiele org members list.
--role read|write|admin|remove Required. read, write or admin, or remove to take them off the branch.

wiele copy

Every wiele branch command on this page also runs as wiele copy, with the same arguments, flags and results. --copy NAME is the same as --branch NAME wherever a command takes a branch.