BK-IMPORT(1)

πŸ“¦ version 7.3.3, in alpine 3.24

πŸ’– NAME πŸ’–

Okay bestie, this is bk import(none) from the BitKeeper User’s Manual β€” the page about bk import, aka the glow-up move for importing files or changes into a BitKeeper package. πŸ¦‹

πŸ¦‹ SYNOPSIS πŸ¦‹

bk import βˆ’tpatch [options] patch destination
bk import βˆ’tplain [options] directory destination
bk import βˆ’tCVS [options] directory destination
bk import βˆ’tMKS [options] directory destination
bk import βˆ’tRCS [options] directory destination
bk import βˆ’tSCCS [options] directory destination

πŸ’… DESCRIPTION πŸ’…

Use bk import to put plain text files, patches (diff βˆ’Nur), and RCS/CVS files into a BitKeeper package. And yes, in this document RCS means CVS, MKS and RCS β€” the whole little friend group. πŸ’œ

For file imports (text, SCCS, RCS, etc), bk import does its work outside of your original tree, so your original files stay intact while they get imported into a BitKeeper package. Iconic behavior, honestly. ✨

Patch imports are the only type of import that may be done repeatedly in the same destination package. Periodt.

See below for information specific to the different types of imports. πŸ‘‘

πŸ”₯ OPTIONS πŸ”₯

  • βˆ’C β€” Do not commit the ChangeSet.
  • βˆ’f β€” Force; do not prompt for list editing.
  • βˆ’F β€” Fast; run more quickly for large imports. NOTICE: use this option only when you know that this is the only BitKeeper activity you are doing. Using this option on two parallel imports may cause BitKeeper consistency problems. no cap, be careful with this one πŸ’€
  • βˆ’ggap β€” Change or disable the gap used to cluster changeset grouping. A gap of 0 clusters all changes into one big changeset; a gap of non-zero clusters changes which happen less than that time span apart. The value is in minutes with the default set to 10.
  • βˆ’Hhostname β€” Set the hostname used for the creation of any new deltas during the import.
  • βˆ’i β€” Prompts for a regular expression to apply to the list of files. All matches are included. (For use with all types except patches.)
  • βˆ’lfile β€” Use the list of files in file. (For use with all types except patches.)
  • βˆ’q β€” Be quiet.
  • βˆ’Ssym β€” Add tag sym to the changeset created around the import.
  • βˆ’ttype β€” Specify import file type. type can be one of:
    • plain β€” Import plain text files
    • patch β€” Import a patch (diffs)
    • RCS β€” Import RCS files
    • CVS β€” Import CVS files. The only difference from βˆ’tRCS is that Attic directories are processed and deleted files are detected. All RCS options may be used with CVS imports.
    • MKS β€” Import MKS Source Integrity files. The files are stripped of the ext field, moved from rcs directories to RCS directories, a ,v suffix is added and then the normal RCS processing is applied. All RCS options may be used with MKS imports.
    • SCCS β€” Import SCCS files
  • βˆ’v β€” Be verbose.
  • βˆ’x β€” Prompts for a regular expression to apply to the list of files. All matches are excluded. (For use with all types except patches.)

🌸 RCS OPTIONS 🌸

  • βˆ’h β€” turn off verification of contents (faster, less safe).
  • βˆ’T β€” Do not import tags. The default is to import tags.
  • βˆ’u β€” Run files through bk undos first; this will convert DOS style end of lines to Unix style end of lines.

πŸŽ€ PATCH OPTIONS πŸŽ€

  • βˆ’pnum β€” Strip the smallest prefix containing num leading slashes from each file name found in the patch file.
  • βˆ’r β€” Do not do rename processing when doing patch imports.
  • βˆ’R β€” If a patch fails to apply cleanly, back out the entire operation and exit with a failure.
  • βˆ’ycomment β€” Set the message for the delta comments for all files to <comment> rather than β€œImport patch PATCHNAME.”
  • βˆ’zfuzz β€” Control the acceptance of fuzz by bk patch by passing the argument βˆ’Ffuzz to bk patch rather than the default βˆ’F0, which indicates strict matching. See the bk help patch man page for further information.

🧚 IMPORTING PATCHES 🧚

BitKeeper can be used to track external work by importing patches (diff βˆ’Nur) into a BitKeeper package. BitKeeper can help with patch import problems, namely that renames are not tracked well and that there generally aren’t very good comments if any at all attached to the changes being made. 😭

A rename in a patch is viewed as the deletion of one file and the creation of another file, so to track these, bk import will launch bk renametool which is the graphical tool used to manually match the deleted files with the newly created files. matchmaker era πŸ’–

🌈 IMPORTING RCS (AND CVS OR MKS) FILES 🌈

The default branch of the RCS tree is the one that will be imported. No other branches are imported, branch imports are on a consulting basis only. All metadata, such as dates, times, user names, checkin comments, and symbolic tags are preserved on import. πŸ‘‘

This type of import requires RCS 5.6 or later to be installed on the importing system.

πŸ“ IMPORTING PLAIN TEXT πŸ“

Importing a plain text file into a BitKeeper package can only be done once. If there is already a file in the package that has the same name as a file to be imported the import will fail. one shot only, bestie 🫢

If a package is already populated with files use the βˆ’i, βˆ’x or βˆ’l options to avoid trying to import files already in the package. Because of the preceding constraints, import does not catch renames with plain text files. If a file has been renamed, it can be imported, but the original file will still exist in the package so it is necessary to remove the original file from the package tree after the import of the renamed file. πŸ¦‹

Plain text files can be imported from a directory,

bk import /path/to/src_files ˜/package

from a list of files relative to the source directory,

bk import ‐l/tmp/list /path/to/src_files ˜/package

or by using regular expressions in interactive mode

bk import ‐ix ˜/src_files ˜/package
End patterns with . by itself or EOF
File name pattern to include>> *.c
File name pattern to include>> *.h
File name pattern to include>> Makefile
File name pattern to include>> .
End patterns with . by itself or EOF
File name pattern to exclude>> *.o
File name pattern to exclude>> .

⭐ IMPORTING SCCS FILES ⭐

Teamware and other SCCS files can be imported. The history of the file is preserved, but the unmerged branches are discarded. This is okay because the necessary metadata is in the mainline. πŸ’œ

Importing BitKeeper files is not supported; use bk clone.

πŸ’€ ERROR HANDLING πŸ’€

Import does not handle all errors in a robust way. If unsuccessful, import may leave work half done in the destination package. It is suggested that the import destination repository is a clone of the original package in case of a failed import. lowkey important, ngl 😭

πŸ‘€ SEE ALSO πŸ‘€

bk‐log, bk‐undos

🏷️ CATEGORY 🏷️

Repository


πŸ’Œ Cute sign-off: source/version is BitKeeper Inc, 1E1 β€” that’s the footer vibe, bestie. The date slot is empty in the original footer, so no invented date here. 🫢✨

πŸ“¦ 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