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

Re: Problems understanding Subversion layout with Subclipse..

From: Kevin Duffey <supreme_java_guru_1_at_yahoo.com>
Date: 2005-08-17 08:09:04 CEST


Thanks for the reply.

> > With Subversion, I have already used the svnadmin
> tool
> > to create a project, /client below our
> > /usr/local/svnroot directory.
> Is /client a repository or a folder in a repository?

Ok, so I did:

svnadmin create /usr/local/svnroot/client

Our IT guy set up the /usr/local/svnroot. I am not
sure why or how that is set up, but somehow that is
our "root" location for all SVN projects to be
located?? Is this normal? It is NOT a SVN directory
with the /db and all that stuff below it. I don't even
know if it was created by using any svn tool or not.
Could be just created by our IT guy to get things
rolling in regards to where to store projects.

When I do the svnadmin create

I see the /db and other directories below it.

I then created a /prj directory and below that
directoreis for /trunk, /branches and /tags. Are these
required? Or just some way one of the subversion
developers thought of keeping track of revisions,
tags, etc? I have not found anything to explain why
these three directories are "best practice", or if
they are required for subversion to work.

I do the svn import /prj
file:///usr/local/svnroot/client -m "Initial import"
which works.

I then go to Eclipse, set up the SVN repository. I
have some screen shots on the subversion site that
seem to be of an earlier version of Eclipse. I am
using 3.1.

So, as I see it, I have a repository called client
located at /usr/local/svnroot/client, right? When
Eclipse SVN wizard asks me for the URL and Root URL, I
put in https://oursite.com/svnroot/client

and for the root URL I left it blank this time, as
some directions I read said to leave it blank. I put
in my user/password but also tried leaving it blank.
This all seems to work. When I hit Finish, I can see
the repository in the view, that worked and I can
expand it and see the /trunk, /branches and /tags
directories. Kewl, so far everything seems fine.

Now, I right-click on my existing project (of which I
just disconnected from a CVS repository remembering to
remove the CVS meta info so all the CVS dirs are
wiped) click team, share project and select SVN.

The below URL is what I am using to follow the screen
shots and info on how to do this.


So I use existing repository location, and this is
where I get stuck. It asks me to use project name or
use specified folder name. What is this? Also, in the
URL above, the screen shot shows a browse button and a
URL label with a msg saying the URL cannot already
exist. This does NOT appear in my Eclipse 3.1 wizard
(subclipse I assume is providing this wizard). So
something changed, but it seems mostly the same. So,
in my repository DB at /svnroot/client, I have a
/trunk, /branches and /tags dir. Do I simply put in
trunk in the use specified folder name? Or do I have
to give another name? I basically want my
/svnroot/client directory to become the repository for
the client project. In the screen shot in the URL, it
shows TestProject/trunk. If I do this, doesn't it end
up creating another repository called TestProject
below the /svnroot/client directory? I tried this
before and it appeard a new directory showed up. So in
the /client direcotry I had the /db, /conf and so
forth, and also a /foldername directory appeared and
below that againt he /conf, /db, etc.

So, this is where my confusion lies. What to enter at
this point for the folder name. In Eclipse 3.1 (and
the latest subclipse plugin) it says Module Name. Not
Folder name.

> Then why did you create the trunk/branches/tags
> folder?

Because the various instructions I have read said to?
Being new to this, I honestly dont know why. :D That
is what I am asking ya'll... what IS the purpose of
these folders? Are they required for subversion to
work? Or are they just "helpful suggestions" on how to
organize a subversion repository?

> Yes, it will do this. It sounds like svnroot is
> also just a folder above
> your repository. If so, it has no more meaning than
> /usr/local.

Again, not sure where svnroot fits, but somehow since
it lies at /usr/local/svnroot but in the URL to the
repository I dont have to specify /usr/local as part
of the string, it appears some how subversion on the
server knows that /svnroot is located at

> Typically, you would have a repository, let's call
> it repos. We will say
> it lives in folder /usr/local/svnroot/repos. The
> URL to the root of this
> repository would be:
> https://oursite.com/svnroot/repos

Ok, why do you not need the /usr/local in the URL?
What is telling subversion that svnroot ==
/usr/local/svnroot on the server? My guess is that the
svnadminc reate /usr/local/svnroot/repos allows the
svnroot path to be found easily given the repository
absolute path?

> But that is assuming that you created an Apache
> <location> directive of
> /svnroot. Personally, I would call the <location>
> /svn so that you are
> not confused about the URL and the real underlying
> folder.

Ahhh.. here is my answer to the previous section. I
guess we do.. not sure though. I am running Resin on
port 80, so I dont know that we are running apache for
this, nor do I know how to figure this out for sure.

> Anyway, inside your repository use svn mkdir to
> create folders for each
> project, such as

Ok, does svn mkdir do anything special that the mkdir
from the local file system wont do, other than maybe
give proper permissions to the dirs?

Thanks again for the help.

Start your day with Yahoo! - make it your home page
Received on Wed Aug 17 16:09:04 2005

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

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