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

Re: Newbie question - version-specific folders

From: Gavin Lambert <tsvn_at_mirality.co.nz>
Date: Tue, 8 Aug 2017 13:34:33 +1200

On 7/08/2017 19:06, David King wrote:
> I like to have both present on my PC, as I can compare, with eg
> 'WinMerge', when I need to see the changes, between V1 and V2
Once imported into SVN, you can view the changes between V1 and V2 just
as easily even if only one (or neither) of them are actually on your
disk, as long as you have access to the repository.

However you can choose to check out two separate working copies with
different revisions, if you prefer keeping both around locally. That's
not really a normal way to use SVN though.

> For example, if I check-in all the files under C:\Foo\Bar\V1\, and
> then want to check-out later, does SVN record the path
> C:\Foo\Bar\V1\, and know to check-out to there (it won't build,
> otherwise) ?
No. SVN only records the subfolders; you can check it out to any
location at all, and when swapping between V1 and V2 it modifies the
files in your existing working copy to the appropriate contents.

> Create folder C:\Foo\Bar\Current\, and copy C:\Foo\Bar\V1\ files to C:\Foo\Bar\Current\.
> Then, in the IDE, alter the mentioned hardcoded paths, from C:\Foo\Bar\V1\, to C:\Foo\Bar\Current\.
> Check the software builds. Then check-in the files under C:\Foo\Bar\Current\, tagging as V1.

Yes, but the best thing to do is to *not* change it to
C:\Foo\Bar\Current\ -- instead make sure that all the paths are relative
(most IDEs either support relative paths directly or using a macro to
refer to the location of the workspace or project file).

As mentioned above, ideally you should be able to check it out anywhere
and it should still build.

> Next, delete the files under C:\Foo\Bar\Current\, then copy in the files from C:\Foo\Bar\V2\.
> In the IDE, alter the mentioned hardcoded paths, from C:\Foo\Bar\V2\, to C:\Foo\Bar\Current\.
> Check the software builds. Then check-in the files under C:\Foo\Bar\Current\, tagging as V2.

Note that TSVN includes a feature where you can right-click-drop the V2
folder onto your working copy "current" folder and request a "vendor
branch", which will take care of deleting the old files, adding the new
ones, and detecting renamed files. This is the best way to introduce a
new version from an external folder as it will do its best to maintain
file history properly. You can verify the results before finally
committing.

------------------------------------------------------
http://tortoisesvn.tigris.org/ds/viewMessage.do?dsForumId=4061&dsMessageId=3282606

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
Received on 2017-08-08 03:35:15 CEST

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