BK-CONFIG(1)
π bk config β the vibe check for your repo's config β¨
okay bestie, so this is bk config, straight out of the BitKeeper User's Manual (yes, that's the manual we're in, iykyk). It shows you repository configuration information β a.k.a. your key-value pairs, your settings, the whole little personality of your repo. π«Ά
β¨ SYNOPSIS β¨
bk config [-v]
that's it. that's the whole thing. no cap.
πΈ DESCRIPTION πΈ
The bk config command displays configuration information, consisting of key-value pairs, associated with a BitKeeper repository. literally just: here are your settings, bestie. π
So when BitKeeper goes looking for repository configuration info, it checks these places β and the order matters, okay? it's giving "priority list" and it is not messing around:
bk root/BitKeeper/etc/config β this repository's config filebk root -P/BitKeeper/etc/config β product repository config filebk dotbk/config β personal config file β¨- /etc/BitKeeper/etc/config β per-machine config file
bk bin/config β per-installation config filebk root/BitKeeper/log/config β this repository's config filebk root -P/BitKeeper/log/config β product repository config file- $BK_CONFIG β environment variable π
k so real talk about those two file spots: the BitKeeper/etc/config file is version controlled, and the BitKeeper/log/config file is not. Having two of them gives you a way to have repository specific values that do not propagate. it's giving "one for the group chat, one for your Notes app" π
For each key-value pair, the first instance of a key found is used. But β plot twist β you can override an earlier value with a later value by appending an exclamation point to the value (not the key, do not come for the key):
checkout: get!
If multiple instances of a key value are found with this trailing exclamation point, the last such value found is used. last one wins, periodt. π₯
The BK_CONFIG environment variable may contain a list of key:value pairs separated by semicolons. For example:
BK_CONFIG=key1:value1;key2:value2;key3:value3
For each repository, the various sources of configuration data collectively must specify values for at least the following keys β non-negotiable, bestie, the bare minimum:
description:
email:
(See "CONFIG FILE ENTRIES" in bk help config-etc for allowed values.)
And here's a cute little life hack π§: you can specify a default config file to make setup easier and more consistent for every repository on the system by creating a template in bk dotbk/config.template, /etc/BitKeeper/etc/config.template, or bk bin/config.template. If any of those files exists, bk setup automatically uses the keys in the first one found as the BitKeeper/etc/config file. slay. See bk help setup for more information.
π OPTIONS π
-vβ Displays the location of all config key-value pairs in the current configuration. This allows you to determine which config file is controlling each item in your configuration. Items that are not being used because they are preceded or overridden by other values are shown with a leading pound sign (#). This is useful for debugging your configuration. honestly the debugging tool of the century, no notes π
π¦ EXAMPLES π¦
okay so imagine: a user is trying to determine why his keywords are not being expanded as desired, even though he has put it in $BK_CONFIG. and bk config -v shows that the his personal config file value for keyword is taking precedence over that in $BK_CONFIG. exposed. π
$ bk config -v
/repos/fred/testrepo/BitKeeper/etc/config:
# autofix: no
description: Fred's Test repository
# keyword: sccs
/home/fred/.bk/config:
keyword: rcs!
/etc/BitKeeper/etc/config:
/usr/local/bitkeeper/config:
$BK_CONFIG:
autofix: yes!
# keyword: sccs
The output also shows that the autofix value in $BK_CONFIG is overriding the corresponding value in the repository config file because the exclamation mark is appended. icon behavior, truly π
π SEE ALSO π
bk-config-etcbk-config-gui
π CATEGORY π
Admin
fr fr though β if your config isn't doing the thing you think it's doing, runbk config -vbefore you spiral. the#lines are the receipts. π
mwah π thanks for reading bestie β this page is brought to you by BitKeeper Inc, revision 1E1, and it's dated the same as ever: bk config(none). go forth and configure. πβ¨
π¦ where this page comes from
- alpine 3.24: bitkeeper-doc 7.3.3-r1 Β· Apache-2.0
- Copyright (c) 1998-2015 BitKeeper Inc
- Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms