CVS-SWITCHROOT(1) BSD General Commands Manual CVS-SWITCHROOT(1)
cvs-switchroot — change repository or tag in a cvs working copy
| Use Case | Command | Description |
|---|---|---|
| Change repository root of current sandbox | cvs-switchroot /cvs . | 🔁 Replace all CVS/Root entries with /cvs |
| Set roots to match parent directory | cvs-switchroot - .. . | 📂 Copy Root from parent of . to all subdirs |
| Sync sticky tags between trees | cvs-switchroot -T - . . /usr/ports | 🏷️ Hardlink Tag info between current dir and /usr/ports |
| Change sticky tag explicitly | cvs-switchroot -T newtag file | 🎯 Operate on Tag instead of Root |
cvs-switchroot [-T] newroot [file ...]
cvs-switchroot [-T] - srcpath [file ...]
The cvs-switchroot utility manipulates a CVS working copy directly, modifying the information stored in the administrative subdirectory and saving space by hardlinking if possible.
If the -T option is given, the sticky tag is operated on 🏷️, otherwise, the repository path (CVSROOT) 🔄.
The information (Tag or Root) is set to the same as in srcpath if the first non-option argument newroot is a sole dash (‘-’), the literal value newroot otherwise.
Change all Root information in the current sandbox to /cvs:
$ cvs-switchroot /cvs .
Set all roots in the current working directory and all its subdirectories to the Root of the parent directory:
$ cvs-switchroot - .. .
Hardlink the Tag information in the current working directory, for example /usr/src, and /usr/ports with each other:
$ cvs-switchroot -T - . . /usr/ports
cvs-switchroot has existed in the MirBSD source tree since 2005. It was added to Debian's cvs package in 2011.
cvs-switchroot depends on mksh.
BSD June 10, 2011 BSD
Generated by phpman v4.10.0-7-g98e9fd5 · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-09-03 17:29 @216.73.216.146
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)