svk checkout — Check out a working copy from a repository.
svk checkout DEPOTPATH[@REV[@]] [PATH]
svk checkout URL [PATH]
svk checkout --list
svk checkout --relocate DEPOTPATH|PATH PATH
svk checkout --detach [DEPOTPATH|PATH]
svk checkout --purge
Check out a working copy from a repository. If
PATH is omitted, the
basename of the DEPOTPATH will be used as the
destination.
Using the second form, svk will setup a mirror of the specified URL if you don't have one already, sync the mirror and checkout a working copy from the mirror.
Unlike Subversion or CVS, SVK working copies do not
contain any administrative files or directories. This
means things like diff -r and
find work great on SVK working
copies. However because of this it's not possible to
simply rename an svk working copy or remove it without
telling svk about it. SVK keeps the metadata
associated with a working copy inside your
$SVKROOT (which defaults to
~/.svk). Because of this you need to
use the commands listed here to manage working
copies.
With the --list switch, output one
line per checked out working copy. Each line consists of
the depotpath followed by an absolute path to the working
copy.
If you wish to change the location of a checked out
working copy you need to use the svk
checkout with the --relocate.
Give it both the old and the new path to the working copy.
Either before or after that you should move the working
copy to it's new location so SVK can find it.
Once you are done using a working copy you should tell
svk this since it keeps track of all checked out working
copies. To do so you would run svk
checkout with the --detach
switch. This lets SVK know it no longer needs to keep
track of this particular working copy. This command does
not actually remove the working copy from disk. That's
still your job.
If you want to create a working copy that svk
doesn't track at all you can use the
--export switch to the svk
checkout command.
If you accidentally remove a working copy or working
copies that svk was tracking for you, running svk
checkout with the --purge
switch will prompt svk to forget about each working copy
it can no longer find on disk.
--revision (-r) REV[@] --non-recursive (-N) --list (-l) --detach (-d) [DEPOTPATH|PATH] --quiet (-q) --export --relocate DEPOTPATH|PATH PATH --purge
Check out a working copy into a directory called
mine:
$ svk checkout //test mine Syncing //test(/test) in /Users/sally/mine to 2. A mine/a A mine/b $ ls mine
List which working copies you have checked out:
$ svk checkout --list Depot Path Path ======================================================================== //test /Users/sally/mine
Change the location of the checked out working copy:
$ mkdir test $ svk checkout --relocate mine test/mine Checkout '/Users/sally/mine' relocated to '/Users/sally/test/mine'. $ svk checkout --list Depot Path Path ======================================================================== //test /Users/sally/test/mine
Get rid of the working copy since we don't need it anymore:
$ svk checkout --detach test/mine Checkout path '/Users/sally/test/mine' detached. $ svk checkout --list Depot Path Path ======================================================================== $ rm -rf test/mine
Using the --purge switch after you
have removed a working copy:
$ svk checkout --quiet //test mine Syncing //test(/test) in /Users/sally/mine to 2. $ rm -rf mine $ svk checkout --purge Purge checkout of //test to non-existing directory /Users/sally/mine? (y/n) y Checkout path '/Users/sally/mine' detached.