Jump to >

diff

rbt diff is similar to rbt post, but will only print the diff to standard out instead of creating a review request for it.

Usage

$ rbt diff [options] [revisions]

Options

-d, --debug

Displays debug output.

This information can be valuable when debugging problems running the command.

The default can be set in DEBUG in .reviewboardrc.

--json

Output results as JSON data instead of text.

The default can be set in JSON_OUTPUT in .reviewboardrc.

New in version 3.0.

Review Board Server Options

Options necessary to communicate and authenticate with a Review Board server.

--server <url>

Specifies the Review Board server to use.

The default can be set in REVIEWBOARD_URL in .reviewboardrc.

--username <username>

The user name to be supplied to the Review Board server.

The default can be set in USERNAME in .reviewboardrc.

--password <password>

The password to be supplied to the Review Board server.

The default can be set in PASSWORD in .reviewboardrc.

--ext-auth-cookies <ext auth cookies>

Use an external cookie store with pre-fetched authentication data. This is useful with servers that require extra web authentication to access Review Board, e.g. on single sign-on enabled sites.

The default can be set in EXT_AUTH_COOKIES in .reviewboardrc.

New in version 0.7.5.

--api-token <token>

The API token to use for authentication, instead of using a username and password.

The default can be set in API_TOKEN in .reviewboardrc.

New in version 0.7.

--disable-proxy

Prevents requests from going through a proxy server.

The default can be set in ENABLE_PROXY in .reviewboardrc.

--disable-ssl-verification

Disable SSL certificate verification. This is useful with servers that have self-signed certificates.

The default can be set in DISABLE_SSL_VERIFICATION in .reviewboardrc.

New in version 0.7.3.

Use an in-memory cookie store instead of writing them to a file. No credentials will be saved or loaded.

The default can be set in SAVE_COOKIES in .reviewboardrc.

New in version 0.7.3.

--disable-cache

Disable the HTTP cache completely. This will result in slower requests.

The default can be set in DISABLE_CACHE in .reviewboardrc.

New in version 0.7.3.

--disable-cache-storage

Disable storing the API cache on the filesystem, instead keeping it in memory temporarily.

The default can be set in IN_MEMORY_CACHE in .reviewboardrc.

New in version 0.7.3.

--cache-location <file>

The file to use for the API cache database.

The default can be set in CACHE_LOCATION in .reviewboardrc.

New in version 0.7.3.

--ca-certs <file>

Additional TLS CA bundle.

The default can be set in CA_CERTS in .reviewboardrc.

--client-key <file>

Key for TLS client authentication.

The default can be set in CLIENT_KEY in .reviewboardrc.

--client-cert <file>

Certificate for TLS client authentication.

The default can be set in CLIENT_CERT in .reviewboardrc.

--proxy-authorization <proxy authorization>

Value of the Proxy-Authorization header to send with HTTP requests.

The default can be set in PROXY_AUTHORIZATION in .reviewboardrc.

Diff Generation Options

Options for choosing what gets included in a diff, and how the diff is generated.

--no-renames

Add the --no-renames option to the git when generating diff.

Supported by: Git

New in version 0.7.11.

--revision-range <rev1:rev2>

Generates a diff for the given revision range.

Deprecated since version 0.6.

-I <filename>, --include <filename>

Includes only the specified file in the diff. This can be used multiple times to specify multiple files.

Supported by: Bazaar, CVS, Git, Mercurial, Perforce, SOS, and Subversion.

New in version 0.6.

-X <pattern>, --exclude <pattern>

Excludes all files that match the given pattern from the diff. This can be used multiple times to specify multiple patterns. UNIX glob syntax is used for pattern matching.

Supported by: Bazaar, CVS, Git, Mercurial, Perforce, SOS, and Subversion.

Patterns that begin with a path separator (/ on Mac OS and Linux, on Windows) will be treated as being relative to the root of the repository. All other patterns are treated as being relative to the current working directory.

For example, to exclude all “.txt” files from the resulting diff, you would use “-X /’*.txt’”.

When working with Mercurial, the patterns are provided directly to “hg” and are not limited to globs. For more information on advanced pattern syntax in Mercurial, run “hg help patterns”

When working with CVS all diffs are generated relative to the current working directory so patterns beginning with a path separator are treated as relative to the current working directory.

When working with Perforce, an exclude pattern beginning with // will be matched against depot paths; all other patterns will be matched against local paths.

The default can be set in EXCLUDE_PATTERNS in .reviewboardrc.

New in version 0.7.

--parent <branch>

The parent branch this diff should be generated against (Bazaar/Git/Mercurial only).

The default can be set in PARENT_BRANCH in .reviewboardrc.

--diff-filename <filename>

Uploads an existing diff file, instead of generating a new diff.

Branch Options

Options for selecting branches.

--tracking-branch <branch>

The remote tracking branch from which your local branch is derived (Git/Mercurial only).

For Git, the default is to use the remote branch that the local branch is tracking, if any, falling back on origin/master.

For Mercurial, the default is one of: reviewboard, origin, parent, or default.

The default can be set in TRACKING_BRANCH in .reviewboardrc.

Repository Options

--repository <name>

The name of the repository configured on Review Board that matches the local repository.

The default can be set in REPOSITORY in .reviewboardrc.

--repository-url <url>

The URL for a repository.

When generating diffs, this can be used for creating a diff outside of a working copy (currently only supported by Subversion with specific revisions or --diff-filename, and by ClearCase with relative paths outside the view).

For Git, this specifies the origin URL of the current repository, overriding the origin URL supplied by the client.

The default can be set in REPOSITORY_URL in .reviewboardrc.

Changed in version 0.6: Prior versions used the REPOSITORY setting in .reviewboardrc, and allowed a repository name to be passed to --repository-url. This is no longer supported in 0.6 and higher. You may need to update your configuration and scripts appropriately.

--repository-type <type>

The type of repository in the current directory. In most cases this should be detected automatically, but some directory structures containing multiple repositories require this option to select the proper type. The rbt list-repo-types command can be used to list the supported values.

The default can be set in REPOSITORY_TYPE in .reviewboardrc.

Git Options

Git-specific options for diff generation.

--git-find-renames-threshold <threshold>

The threshold to pass to :option:–find-renames`` when generating a git diff.

For more information, see git help diff.

Perforce Options

Perforce-specific options for selecting the Perforce client and communicating with the repository.

--p4-client <client name>

The Perforce client name for the repository.

The default can be set in P4_CLIENT in .reviewboardrc.

--p4-port <port>

The IP address for the Perforce server.

The default can be set in P4_PORT in .reviewboardrc.

--p4-passwd <password>

The Perforce password or ticket of the user in the P4USER environment variable.

The default can be set in P4_PASSWD in .reviewboardrc.

Subversion Options

Subversion-specific options for controlling diff generation.

--basedir <path>

The path within the repository where the diff was generated. This overrides the detected path. Often used when passing --diff-filename.

The default can be set in BASEDIR in .reviewboardrc.

--svn-username <username>

The username for the SVN repository.

--svn-password <password>

The password for the SVN repository.

--svn-prompt-password

Prompt for the user’s svn password. This option overrides the password provided by the --svn-password option.

The default can be set in SVN_PROMPT_PASSWORD in .reviewboardrc.

New in version 0.7.3.

--svn-show-copies-as-adds <y|n>

Treat copied or moved files as new files.

This is only supported in Subversion 1.7+.

New in version 0.5.2.

--svn-changelist <id>

Generates the diff for review based on a local changelist.

Deprecated since version 0.6.

TFS Options

Team Foundation Server specific options for communicating with the TFS server.

--tfs-login <tfs login>

Logs in to TFS as a specific user (ie.user@domain,password). Visit https://msdn.microsoft.com/en-us/library/hh190725.aspx to learn about saving credentials for reuse.

--tf-cmd <tf cmd>

The full path of where to find the tf command. This overrides any detected path.

The default can be set in TF_CMD in .reviewboardrc.

--tfs-shelveset-owner <tfs shelveset owner>

When posting a shelveset name created by another user (other than the one who owns the current workdir), look for that shelveset using this username.