stamp¶
rbt stamp looks up a review request matching the latest commit on
the active branch and, if found, alters the commit message to contain a
Reviewed at <url>
line.
The revisions
argument behaves like it does in rbt post, where it is
required for some SCMs (e.g. Perforce) and unnecessary/ignored for others
(e.g. Git). For repositories that use it, the specified revision/changelist
will be stamped, rather than the latest one.
Normally, this command will guess the review request (based on the revision
number if provided, and the commit summary and description otherwise).
However, if a review request ID is specified with -r
, it stamps the
URL of that review request instead of guessing.
Pointing to a matching review request in a commit message helps later on when trying to piece together the reason or discussions behind a change.
If the repository is configured with appropriate post-commit hooks, this line can inform the hook of the matching review request, allowing that hook to perform actions such as closing the review request.
A commit message can also be stamped from rbt post by adding the -s flag:
$ rbt post -s
Usage¶
$ rbt stamp [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
.
Stamp Options¶
Controls the behavior of a stamp, including what review request URL gets stamped.
-
-r
<id>
,
--review-request-id
<id>
¶ Specifies the existing review request ID to be stamped.
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
.
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.
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
.
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, 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, 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
, ordefault
.The default can be set in
TRACKING_BRANCH
in.reviewboardrc
.
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
.