svk and working with external project

I’ve been reading the svk documentation, which is somewhat lacking, working out the best way to setup an external development enviroment for tracks a Rails based GTD project I’ve been contributing too. I’m planning to port the Salted Hash Login Generator to Tracks. Currently I don’t have write access to the track subversion repository, so this lead me to try svk out.

I decided that I wanted a seperate subversion repository from the svk default depot for mirror tracks and tracking my changes. So I followed the basic setup for svk: svk depotmap –init. Then added ‘tracks’:/home/svn/tracks via svk depotmap.

[nic@shell:~/] svk depotmap
Waiting for editor...
New depot map saved.
Repository /home/svn/tracks does not exist, create? (y/n)y
[nic@shell:~/] svk depotmap --list
Depot Path
// /home/nic/.svk/local
/tracks/ /home/svn/tracks
[nic@shell:~/] svk ls /tracks/mirror/

Then I setup the mirror for the mainline tracks repository with:

[nic@shell:~/] svk mirror /tracks/mirror/
[nic@shell:~/] svk mirror --list
Path Source
[nic@shell:~/] svk sync /tracks/mirror
Retrieving log information from 1 to 101
Committed revision 2 from revision 1.
Committed revision 102 from revision 101.

Finally create the local development branch:

[nic@shell:~] svk cp -p -m'Branch to bring work on Salted Hash Login Genetator version of tracks' /tracks/mirror/trunk/tracks /tracks/local/shlg-tracks
Committed revision 103.
[nic@shell:~/tmp] svk co /tracks/local/shlg-tracks
Syncing /tracks/local/shlg-tracks(/local/shlg-tracks) in /home/nic/tmp/shlg-tracks to 103.
A shlg-tracks/test
A shlg-tracks/test/unit

From what I’ve read I can also do this remotely (rails to shell) with:

[nic@rails:~/tmp] svn co svn+ssh://shell/home/svn/tracks/local/shlg-tracks shlg-tracks
A shlg-tracks/test
A shlg-tracks/test/unit
A shlg-tracks/test/unit/user_test.rb
A shlg-tracks/test/unit/context_test.rb

Although at this point I’m not 100% sure I can workable use svn to commit back to the svk branch, without corruption.

Comments are closed.