BK-RSET(1)

๐Ÿ“ฆ version 7.3.3, in alpine 3.24

๐Ÿ’– BK-RSET(1) โ€” bk rset(none) ๐Ÿ’–

okay so bestie, welcome to the BitKeeper Userโ€™s Manual page for bk rset(none). This is the group chat where bk rset spills the tea about files in a cset, or the diff between two csets, and formats it so other tools can eat it up. ๐Ÿ’…

๐ŸŒธ NAME ๐ŸŒธ

bk rset โ€” list files in a cset or the difference between two csets

โœจ SYNOPSIS โœจ

bk rset [โˆ’ahSU] โˆ’lrev | โˆ’Rrev | โˆ’rr1..r2

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

bk rset is a tool that generates information about a particular changeset (โ€l) or the differences between two changesets (โ€r/โ€R) in a form that can be passed to other tools (see examples below). iconic helper behavior, honestly.

The format is some variation of <pathname>|<revs> where the rev is usually in the MD5 key format. Because MD5 keys are long (hereโ€™s one: 37d3f5a9b3lm8Qx0jP8XDL8ULRE19A) we donโ€™t show actual keys, instead we show <md5A>..<md5B> in example output.

To see the difference between a changeset and its parent:

$ bk rset โ€R1.201
ChangeSet|1.200..1.201
src/Makefile|<md5A>..<md5B>

๐Ÿ’… OPTIONS ๐Ÿ’…

  • โˆ’a โ€” Show deleted files which are normally suppressed.
  • โˆ’h โ€” Show the โ€œhistoricโ€ paths of the file as well as the current path. This makes the output look like current path|start path|rev|end path|rev. The output has three file names: current, starting, and ending; corresponding to the current pathname, the pathname of the file at the start of the first changeset listed, and the pathname of the file at the end of the last changeset. For merge changesets, the format gets 2 more fields for any file that has different revs in the history of the two parents, where neither rev is in the history of the other. For these files, the output looks like current path|start1 path|rev1|start2 path|rev2|end path|rev.
  • โˆ’lrev โ€” list the entire repository as of changeset rev. Mutually exclusive with โˆ’R.
  • โˆ’rr1..r2 โ€” List the differences between changeset r1 and changeset r1.
  • โˆ’Rrev โ€” List the differences between the parent or parents of rev and rev.
  • โˆ’U โ€” User files only (like bk โ€U). Does not list ChangeSet or anything under BitKeeper/.

๐Ÿ”ฅ EXAMPLES ๐Ÿ”ฅ

Rset is a helper tool, it is used by other tools that want to show you a view of history. For example, bk difftool โ€rbkโ€5.0..bkโ€6.0 calls rset to get the set of files to display.

Quite a few of the BitKeeper commands can accept rset input to drive them, some examples:

bk rset โ€R+ | bk log โ€
bk rset โ€UR+ | bk diff โ€

The documentation below is for script writers who may want to use rset to drive bk directly.

To list all the files at their current location (less deleted files, โ€a will add those):

$ bk rset โ€l+
ChangeSet|+
BitKeeper/etc/config|<md5>
RELEASEโ€NOTES|<md5>
...
src/gui/ChangeSet|<md5>
src/gui/BitKeeper/etc/config|<md5>
src/gui/csettool.tcl|<md5>
...

Show the difference between a merge changeset and its parents:

$ bk rset โ€R1.2104
ChangeSet|1.2103,1.2058.7.1..1.2104
src/libc/ChangeSet|<md5A>,<md5B>..<md5C>
src/libc/utils/dirs.c|<md5A>,<md5B>..<md5C>
src/libc/utils/fileops.c|<md5A>,<md5B>..<md5C>
...

Show what is the difference between two changesets, in just the GUI components, showing historical paths. Note that this format is not parsed by most BitKeeper commands. Also note in the example below several of the .tcl files have been renamed to .l files.

$ bk rset โ€sGUI โ€h โ€rbkโ€6.0.2..bkโ€6.0.3
src/gui/ChangeSet|src/gui/ChangeSet|<md5A>|src/gui/ChangeSet|<md5B>
src/gui/common.l|src/gui/common.tcl|<md5A>|src/gui/common.l|<md5B>
src/gui/difflib.l|src/gui/difflib.tcl|<md5A>|src/gui/difflib.l|<md5B>
src/gui/fmtool.l|src/gui/fmtool.tcl|<md5A>|src/gui/fmtool.l|<md5B>
src/gui/tcltk/Makefile|src/gui/tcltk/Makefile|<md5A>|src/gui/tcltk/Makefile|<md5B>
...

Show the difference between a merge change and its parents, showing historic paths. For files which changed on both sides of the merge, there will be 7 fields instead of 5.

$ bk rset โ€h โ€R1.2503
ChangeSet|ChangeSet|1.2502|ChangeSet|1.2468.1.270|ChangeSet|1.2503
src/changes.c|src/changes.c|<md5A>|src/changes.c|<md5B>|src/changes.c|<md5C>
src/sccs.h|src/sccs.h|<md5A>|src/sccs.h|<md5B>|src/sccs.h|<md5C>
src/slib.c|src/slib.c|<md5A>|src/slib.c|<md5B>|src/slib.c|<md5C>
src/t/ChangeSet|src/t/ChangeSet|<md5A>|src/t/ChangeSet|<md5B>|src/t/ChangeSet|<md5C>
...

๐ŸŒˆ SEE ALSO ๐ŸŒˆ

diff(1), patch(1), bkโ€export, bkโ€log, bkโ€range, bkโ€terms

๐Ÿ‘‘ CATEGORY ๐Ÿ‘‘

Utility

mwah ๐Ÿ’– โ€” source/version/date tag: BitKeeper Inc, 1E1, page id bk rset(none).

๐Ÿ“ฆ where this page comes from
  • alpine 3.24: bitkeeper-doc 7.3.3-r1 ยท Apache-2.0
  • ๐Ÿ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms