[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: REINSTATE HIDDEN ARCHIVED BRANCHES

From: Stefan Küng <tortoisesvn_at_gmail.com>
Date: Sat, 01 Nov 2008 17:49:22 +0100

BigAlUK wrote:
> This came up when I was creating Delphi-Version-Specific libraries of
> older code: each "Delphi X" folder pertains to a particular version of
> the Delphi compiler and has "cheap copies" of very similar component
> and source code libabries in almost identical folder structures. The
> premise is that PVN acts as a repository for optionally "downloading"
> an entire library to a PC as a working copy, or just that part that
> pertains to a particular version of the compiler (not every PC or
> project has the same compilers). However, to further reduce the
> download, I have made it so that some libraries can become defunct (by
> default in a download) but can be optionally reinstated. I solved
> this bit of my requirement by using a batch file in each appropriate
> one-down-from-leaf-folder (see example below):
>
> rem ====================================================
> rem UN-REM THE APPROPRIATE LINES FOR THE COPIES YOU WANT
> rem ====================================================
>
> rem REMEMBER THAT AN SVN UPDATE AT ANY LEVEL WILL AUTOMATICALLY REMOVE
> THE STUFF AGAIN FROM THAT LEVEL!
>
> rem AMMEND THE ENTRIES TO THE DESIRED VERSION IF THAT CHANGES. NOTE
> HOWEVER
> rem THAT A CHANGE TO ANY VERSION REINSTATED IN THIS WAY WILL REQUIRE
> EXTRACTION
> rem (UNVERSIONED) OF THE ORIGINAL VERSION (NOT A VERSION UPDATE LIKE
> BELOW) AND
> rem THEN RE-INCORPORATION AS A NEW ADDITION TO SVN: THIS IS BECAUSE
> THE FILES
> rem NO-LONGER EXIST AT THIS LATEST VERSION OF THE REPOSITORY.
>
> rem TortoiseProc.exe /command:update /rev:337 /path:".\DirectX3" /
> closeonend:4
> rem TortoiseProc.exe /command:update /rev:337 /path:".\DirectX5" /
> closeonend:4
> rem TortoiseProc.exe /command:update /rev:337 /path:".\DirectX6" /
> closeonend:4
> rem TortoiseProc.exe /command:update /rev:308 /path:".\DirectX7 -
> DelphiX" /closeonend:4
> rem TortoiseProc.exe /command:update /rev:368 /path:".\DirectX8.0 (D6
> Companion Disk)" /closeonend:4
>
>
> As you can see from this batch file, I can then "delete" the retired
> libaries from the latest SVN version of my repository, but recover
> them at some future point (when I need to rework an old project) by
> editing and running this batch file.

Why do you delete them if you still might need them later? Why not just
create a branch for those, e.g. /archivedlibs/... ?

> There is (as the batch file comment notes) a small problem: if I want
> to make changes to that defunct library, I cannot seem to reinstate it
> without losing the "cheap copy" aspect of it all!

Open repository browser, switch to the revision where it still existed,
then copy the folder to e.g. trunk or whatever folder, then check out
that new folder and you can commit from there again.

Also, you can copy a folder from the repository browser to your working
copy (instead of a target url, enter the path to your working copy in
the copy dialog).

Stefan

-- 
       ___
  oo  // \\      "De Chelonian Mobile"
 (_,\/ \_/ \     TortoiseSVN
   \ \_/_\_/>    The coolest Interface to (Sub)Version Control
   /_/   \_\     http://tortoisesvn.net

Received on 2008-11-01 17:50:04 CET

This is an archived mail posted to the TortoiseSVN Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.