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

Re: Applications and Projects

From: Ben Collins-Sussman <sussman_at_collab.net>
Date: 2004-09-12 05:22:14 CEST

On Fri, 2004-09-10 at 23:41, Brooke Benjamin Oehm Smith wrote:

>
> My understanding of svn:externals is that if I used externals then the
> repository export or checkout would have a structure that looked like
> (if the Apps were defined as externals in the projects):
>
> .../App1
> .../App2
> .../Proj1
> .../Proj1/App1
> .../Proj1/App2
> .../Proj2
> .../Proj2/App1
> .../Proj2/App2
>

Well, sure, if you attached 'svn:externals' properties to Project1,
stating that Project1 wants App1 and App2 to exist as subdirectories,
then whenever you run 'svn checkout URL-to-Proj1', you'd get a working
copy that looks like

   Proj1
   Proj1/App1
   Proj1/App2

But in the repository, these things still live in sibling dirs:

   Proj1/
   App1/
   App2/

> THAT IS NOT WHAT I WANT!
>
> Is there any easy way to achieve what I want using the existing vanilla
> SVN?

At this point you're assuming we understand what you want. You've told
us that you *don't* want 'svn checkout' to create App1 and App2 as child
directories of Project1. What *do* you want? Re-reading your first
paragraph, you plainly state that "don't want the apps to be included
inside the project"... "you want the apps independent of any
projects"...?

So I'm guessing here that you're looking for some sort of feature
similar to CVS modules where you can say

  svn checkout module-thing

And end up with a working copy that looks like

   Proj1/
   App1/
   App2/

If so, here's a way to get something similar: create a directory
somewhere in the repository called "mymodule" (or whatever you wish).
Make it an empty directory, or maybe just drop a README file into it.
Attach an svn:externals property which checks out those three dirs as
siblings. Then, when you run 'svn checkout mymodule', you get:

  mymodule/
  mymodule/README
  mymodule/Proj1/
  mymodule/App1/
  mymodule/App2/

Easy enough?

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Sun Sep 12 05:27:59 2004

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