Initialize
You need to create a primary repository for svk to use. You can create
this repository using
svk depotmap --init
The default repository svk looks for is ~/.svk/local
After the first time you run svk, you'll have a .svk/config file, you
can edit the depotmap to modify the default repository and add
other maps to make the repositories accessible from svk. Also, see
svk depotmap --help
Mirroring
For example if you want to bring the svk source tree to
your local repository:
svk mirror //svk/trunk http://svn.elixus.org/repos/member/clkao/svk
Then you can synchronize with:
svk sync //svk/trunk
If you don't want to sync every revision from the remote, you can
add a -s REV option as the first revision to sync without previous
changes.
svk sync //svk/trunk -s HEAD
Now you might want to create a local branch:
svk cp -m 'local branch for svk' //svk/trunk //svk/local
checkout / update / commit
Most of the normal operations you use in svn would be found in svk also:
svk co //svk/local svk # checkout to svk under current directory
(Note that for the moment: we don't use .svn directory, so you can't move the
checkout copies. A subcommand should be available in the future)
svk up -r REV # update to revision <REV>
Also note that subcommands do not support multiple targets at this
moment.
merge
In svk, you can merge into a checkout copy or into the repository
directly. For example, if you want to bring your local change from
rev 3 to rev 6 to the remote:
svk merge -r 3:6 //svk/local //svk/trunk
The commit by merge will be made to the remote repository in this
case. (It's advised to check with -C to see if the merge succeeded)
Please note that currently Algorithm::Merge has many bugs that will
cause merging to fail. A merge regression code is built into the merge command,
please help report failed merges to the authors. We will either try
to fix Algorithm::Merge or use svn's diff library when it goes
streamy instead of mmapping.
smerge
Smart merge, or star-merge. This is a frontend of merge
(described above) which stores extra information about performed merges
and finds appropriate revision numbers to use automatically. graco quattro tour travel system
smerge is (heavily?) inspired by the star-merge algorithm developed
by TomLord for the GnuArch revision control system. It also supports
baseless merges. Additionally, you have the option to specify an arbitary
common base revision. bissell proheat 2x select