Newbie Qs about organizing repository and getting checkouts to go where I want them
From: Chris Chiesa <chrischiesa1_at_gmail.com>
Date: Wed, 14 Mar 2012 08:11:48 -0700 (PDT)
This is kind of long. Please forgive me; I am trying to get up and going and don't have a lot of time.
Trying to figure out usage patterns for SVN for my Windows app and DLL projects.
Having tried a few times to read the SVN book, and not been able to get far, here is my understanding of how to use SVN:
- put the project source files into a particular subdirectory of a repository (1, below). At first into 'trunk,' but with the option to 'branch' different variants of the project (2, 3) at any time.
- "Updating" a file replaces its earlier version, in the sense that if I check out the "HEAD" revision of the entire directory I get the latest version of every file. I can also check out earlier versions of of each file by specifying the version I want -- or can "tag" a collection of versions at a given time (e.g. when I build a "release" of my app or DLL) and check out that whole collection all at once at a future time.
(1) The first time I've done this, I had to use "Add File" for each individual file. That was tedious. Is there a way to add a whole set of files at once? "Add Folder" creates a subfolder in the repository, which I don't think is what I want (see structure below). Am I organizing the repository inappropriately? I assume source files should be directly in 'trunk,' not a subfolder thereof. It's not clear how I would update/branch a subfolder of 'trunk.'
(3) Can I "go back" and branch from a version of a file "earlier than the HEAD?" Can I branch from a previously "tagged" set of (versions of) files?
My repository structure looks like this:
I am having a little trouble getting Tortoise SVN to do what I want, but maybe what I want goes against the principles of SVN.
Basically, I want to check out the source files from Apps/AppOne/GUI/trunk, and the .dll and .lib from Apps/AppOne/Libraries, into the SAME working directory. Tortoise lets me check out the source files, of course, but when I then go to check out the .dll and .lib it tells me the destination (or any subfolder thereof) "is already a working directory for a different URL." (This, AFTER asking me if I wanted to cancel, for that very reason, or continue; why offer "continue" if it's not going to be permitted anyway?) Is there a way to do this? How do I get the .dll and .lib into the source directory at build time?
I'm not really comfortable putting .dll and .lib files into SVN in the first place -- technically they're the OUTPUTS of a build (from a different place in the repository) -- but since they are INPUTS to the compile-and-link process I'm bending my rules a little bit.
Checking out the entire AppOne tree checks out 'branches', 'tags', and 'trunk' directories, with the source files inside 'trunk,' of course. That's not what I want either.
Is there a way to do this?
Thanks in advance.
To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_tortoisesvn.tigris.org].
This is an archived mail posted to the TortoiseSVN Users mailing list.