Manpage of BTS


Section: (1)
Updated: 2002-03-13
Return to Main Contents


bts - developers' command line interface to the BTS  


bts command [args] [#comment] [.|, command [args] [#comment]] ...  


This is a command line interface to the bug tracking system, intended mainly for use by developers. It lets the BTS be manipulated using simple commands that can be run at the prompt or in a script, does various sanity checks on the input, and constructs and sends a mail to the BTS control address for you.

In general, the command line interface is the same as what you would write in a mail to, just prefixed with ``bts''. For example:

 % bts close 85942
 % bts severity 69042 normal
 % bts merge 69042 43233
 % bts retitle 69042 blah blah

A few additional commands have been added for your convenience, and this program is less strict about what constitutes a valid bug number. For example, ``close Bug#85942'' is understood, as is ``close #85942''.

Also, for your convenience, this program allows you to abbreviate commands to the shortest unique substring (similar to how cvs lets you abbreviate commands). So it understands things like ``bts cl 85942''.

It is also possible to include a comment in the mail sent to the BTS. If your shell does not strip out the comment in a command like ``bts severity 30321 normal #inflated severity'', then this program is smart enough to figure out where the comment is, and include it in the email. Note that most shells do strip out such comments before they get to the program, unless the comment is quoted.

You can specify multiple commands by separating them with a single dot, rather like update-rc.d; a single comma may also be used; all the commands will then be sent in a single mail. For example (quoting where necessary so that bts sees the comment):

 % bts severity 95672 normal , merge 95672 95673 \#they\'re the same!

Please use this program responsibly, and do take our users into consideration.  


For full details about the commands, see the BTS documentation.
show <bug>
Display a particular bug in a web browser. The browser can be configured by setting the BROWSER environment variable. The conventions follow those defined by Eric Raymond at; we here reproduce the relevant part.

The value of BROWSER may consist of a colon-separated series of browser command parts. These should be tried in order until one succeeds. Each command part may optionally contain the string ``%s''; if it does, the URL to be viewed is substituted there. If a command part does not contain %s, the browser is to be launched as if the URL had been supplied as its first argument. The string %% must be substituted as a single %.

Rationale: We need to be able to specify multiple browser commands so programs obeying this convention can do the right thing in either X or console environments, trying X first. Specifying multiple commands may also be useful for people who share files like .profile across multiple systems. We need %s because some popular browsers have remote-invocation syntax that requires it. Unless %% reduces to %, it won't be possible to have a literal %s in the string.

For example, on most Linux systems a good thing to do would be:

BROWSER='mozilla -raise -remote ``openURL(%s,new-window)'':links'

bugs <package>
bugs <maintainer>
Display all of a maintainer or package's bugs, in a web browser. If neither a maintainer email address nor a package is specified, it will display your bugs (if DEBEMAIL is set to the appropriate email address).
close <bug>
Close a bug. Remember that using this to close a bug is often bad manners, sending an informative mail to is much better.
reopen <bug> <submitter>
Reopen a bug, with optional submitter.
retitle <bug> <title>
Change the title of the bug.
reassign <bug> <package>
Reassign a bug to a different package.
merge <bug> <bug> [<bug> ...]
Merge a set of bugs together.
unmerge <bug>
Unmerge a bug.
tag <bug> [+|-|=] tag [tag ..]
tags <bug> [+|-|=] tag [tag ..]
Set or unset a tag on a bug. The tag may be abbreviated to any unique substring. Multiple tags may be specified as well. The two commands (tag and tags) are identical.
severity <bug> <severity>
Change the severity of a bug. The severity may be abbreviated to any unique substring.
forwarded <bug> <email>
Mark the bug as forwarded to the given email address.
notforwarded <bug>
Mark a bug as not forwarded.
Display version and copyright information.
Display a short summary of commands, suspiciously similar to parts of this man page.


If this is set, the From: line in the email will be set to use this email address instead of your normal email address (as would be determined by mail).
If DEBEMAIL is set, DEBFULLNAME is examined to determine the full name to use; if this is not set, bts attempts to determine a name from your passwd entry.
If set, it specifies the browser to use for the 'show' and 'bugs' options. See the description above.


No caching is done of requested data from the BTS, unless the web browser you use is configured to use a proxy.  


This program is Copyright (C) 2001 by Joey Hess <>. It is licensed under the terms of the GPL.




This document was created by man2html, using the manual pages.
Time: 09:04:21 GMT, July 15, 2020