Buf(1)

NAME
buf-push - Push to a registry

SYNOPSIS
buf push [flags]

DESCRIPTION
The first argument is the source to push, which must be one of format [dir,git,protofile,tar,zip]. This defaults to "." if no argument is specified.

OPTIONS
--create[=false]
    Create the module if it does not exist. Defaults to creating a private module if --create-visibility is not set.

--create-default-label=""
    The module's default label setting, if created. If this is not set, then the module will be created with the default label "main".

--create-visibility="private"
    The module's visibility setting, if created. Can only be set with --create. Must be one of [public,private]

--disable-symlinks[=false]
    Do not follow symlinks when reading sources or configuration from the local filesystem By default, symlinks are followed in this CLI, but never followed on the Buf Schema Registry

--error-format="text"
    The format for build errors printed to stderr. Must be one of [text,json,msvs,junit,github-actions,gitlab-code-quality]

--exclude-unnamed[=false]
    Only push named modules to the BSR. Named modules must not have any unnamed dependencies.

--git-metadata[=false]
    Uses the Git source control state to set flag values. If this flag is set, we will use the following values for your flags:
    --source-control-url to <git remote URL>/<repository name>/<route>/<checked out commit sha> (e.g. https://github.com/acme/weather/commit/ffac537e6cbbf934b08745a378932722df287a53).
    --label for each Git tag and branch pointing to the currently checked out commit. You can set additional labels using --label with this flag.
    --create-default-label to the Git default branch (e.g. main) - this is only in effect if --create is also set.

The source control URL and default branch is based on the required Git remote "origin". This flag is only compatible with checkouts of Git source repositories. If you set the --source-control-url flag and/or --create-default-label flag yourself, then the value(s) will be used instead and the information will not be derived from the Git source control state.

-h, --help[=false]
    help for push

--label=[]
    Associate the label with the modules pushed. Can be used multiple times.

--source-control-url=""
    The URL for viewing the source code of the pushed modules (e.g. the specific commit in source control).

OPTIONS INHERITED FROM PARENT COMMANDS
--debug[=false]
    Turn on debug logging

--log-format="color"
    The log format [text,color,json]

--timeout=0s
    The duration until timing out, setting it to 0 means no timeout

SEE ALSO
buf(1)

HISTORY
2026-04-14 Auto generated by spf13/cobra