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

RE: [TSVN] Separate or combined repository for multiple projects (was 'Complexity of relocate')

From: Moretti, Giovanni <G.Moretti_at_massey.ac.nz>
Date: 2005-02-21 04:35:28 CET

Lubbe

Your approach of multiple smaller repositories is appealing for all the
reasons you mentioned, as well as speeding commit scans, but there is
one significant problem - "commit" and "update" are asymmetric - they do
slightly different things when used with folders containing externals.

Currently I'm working with two big (for me) repositories:

 1. MyResearch: about 1.5GB
                 all my research files (pictures, notes, pdfs,
                 and powerpoint presentations & academic papers ...)

 2. Software I'm writing : several hundred MB, pretty much all in Delphi

These repositories were created by simply importing the corresponding
"pre-subversion" directories.

From this I create a "Workspace" of about seven folders all extracted as
EXTERNALS,
  - all of the "Software" repository (so I can move bits about easily)
  - bibliography <-- pulled from MyResearch
  - admin <-- pulled from MyResearch
  - and several others <-- pulled from MyResearch

This makes currently relevant appear as top level folders in the
workspace, much as you've suggested.

This has two major benefits:

  1. working on differing machines (home/work/laptop) is simply a matter
     of updating the "Workspace" which will suck out folders from all
     over the repositories and make them into pseudo "top level"
folders.

  2. You're not navigating all over the place trying to find folders
     currently of interest.

Significant Problem - Worse with More Repositories:

  1. "Commit" on the workspace **FINDS** all the files that should be
      committed in the "externally" linked subdirectories, but doesn't
      actually commit them.

      ==> there's NO SINGLE COMMAND to "Commit all External Subfolders"
          which means it easy to forget some.

  2. The "Commit" messages need the current project as the 1st part of
the
     line otherwise they don't quite make sense.
     ==> The suggested "Repository per Project" would fix this.

  3. (not related to this discussion) - the diskspace for non-source
files
     eg images, powerpoint ... because of the local duplicate copy is
     significant.

To handle point #1, I've thought of writing a program in Delphi that
would look for any subfolders containing an ".svn" directory and commit
them all with the same user-defined commit message. This isn't hard but
it seems like something Tortoise (and Subversion) should do, otherwise
there's a noticeable asymmetry between "update" and "commit" on folders
containing "svn:external"

--> Am I missing something?
    If not, could I suggest a "Commit all Externals" menu item in TSVN.

Thanks for your efforts all. Apart from a few aborted "commits" caused
by "Folder already exists", TSVN and Subversion have run flawlessly for
months - I'm going to point my students at it this year.

--> Could I suggest a option during "Update":

    "Folder "foldername" already exists - Delete & Continue Update?"

    rather than just aborting - it took me ages to find some of these.

It only asks if the folder is NOT under subversion control, so there
shouldn't be any "pending update" or "local modifications" to get in the
way ...

Cheers and Thanks
Giovanni
========================================================================
Giovanni Moretti | Institute of Information Sciences and Technology
Senior Lecturer | Massey University, Palmerston North, New Zealand
Computer Science | Ph 64-6-3505799x2474 == Fax 64-6-3502259 == ZL2BOI
------------------------------------------------------------------------
 http://www-ist.massey.ac.nz/moretti mailto:G.Moretti_at_massey.ac.nz

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tortoisesvn.tigris.org
For additional commands, e-mail: dev-help@tortoisesvn.tigris.org
Received on Mon Feb 21 04:36:59 2005

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

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