One of SVK’s features that I really like is that there aren’t any bookkeeping directories in your checkouts to get in the way of grep and find. Problem is, when you delete a checkout in the filesystem, there’s nothing to notify SVK of the deletion. It’s not a big deal, it just takes some extra space in my ~/.svk/ directory. I says to myself, I says, “it would be really nice to be able to do svk checkout --list and get a listing of all checkouts”.

Turns out, SVK beat me to the punch:

~] svk co --list
Depot Path                     Path
================================================================
//IPC-DirQueue/local           /home/collin/src/IPC-DirQueue
//Net-Google/local             /home/collin/src/Net-Google
//SOAP-Lite-Mock/local         /home/collin/src/SOAP-Lite-Mock
//WWW-Google-News/local        /home/collin/src/WWW-Google-News
//adaptive_parsing/local       /home/collin/src/adaptive_parsing
//c2-ecore/local               /home/collin/src/c2
//coverme/local                /home/collin/src/coverme
//e2-ecore/local               /home/collin/src/e2-ecore
//everydevel/local             /home/collin/src/everydevel
//functional/local             /home/collin/src/functional
//personal/local               /home/collin/doc
//python-3000/main             /home/collin/src/python-3000
//python-peps/local            /home/collin/src/python-peps
//svk/local/main               /home/collin/src/svk
//svnmock/local                /home/collin/src/svnmock
//test_support/local           /home/collin/src/test_support
//typecheck/local              /home/collin/src/typecheck
//unittest/local               /home/collin/src/unittest
~] 

Beautiful.

Now all I need is an svk checkout --cleanup macro around --list that will purge SVK of any checkouts that have already been removed from the filesystem.