SVK 是建立於 Subversion 之上,使用 Perl 寫成的版本控制系統,他透過作為 Subversion 一個客戶端的程式,使用原本 Subversion 的檔案系統,去加強脫機使用的功能。例如在使用 Subversion 時,很多工作必須在使用者有連上伺服器時才能進行(例如你想要檢視每次的 revision 所做的變更都必需跟伺服器在線上取得數據),且當用戶一將手上的東西上傳以後,這些東西馬上就會變成一個新的版本(revision),但這些東西其實只有改了一半,也就是處在不一定能正常使用的狀態,這些東西如果是上傳到有許多人共享的伺服器上面,則就很容易影響整個系統,可是如果不上傳有時候也會讓修改的人無法進行版本控制,造成工作上的困擾。
有了 SVK 這樣一個 Subversion 的脫機客戶端程式,當你在沒有網路的地方時還是可以正常的工作,等到工作告一段落時再透過網路將成果送回到伺服器上。這是透過 SVK 中的映射功能達成的,也就是說這是把工作用伺服器上面的檔案庫整個映像回自己的計算機裡面。也因此可以透過 SVK patch 的功能來製作 patch file ,這使得沒有許可權存取檔案庫的使用者還是可以在把檔案庫映像下來後在自己計算機上做版本控制,並透過 SVK 產生 patch file 與其它使用者交流。
SVK 還有一個好處,除了 Subversion 的檔案庫以外,他也能映像其它版本控制系統的檔案案庫(例如 CVS, Perforce, arch, cvsbk),對於參加多個使用不同版本控制系統的項目的人來說,就不用每次都使用不同的客戶端程式。