I'm fairly new to SVN and I would be interested in hearing about how other people would organize projects in SVN.
We have projects that have different types of source files: C#, SQL, and Matlab. In addition to these types of files, we have Excel and Word file reports that we do not intend to put into SVN.
So let's say we have a projects directory:
Projects\
Projects\Project1
Projects\Project2
...
Now for the SVN repository, would it make sense to categorize things by source file type (C#, SQL, Matlab) then project:
SVN\C#\Project1
SVN\C#\Project2
SVN\SQL\Project1
SVN\SQL\Project2
SVN\Matlab\Project1
SVN\Matlab\Project2
Or would it make more sense to categorize things by project first then source file type:
SVN\Project1\C#
SVN\Project1\SQL
SVN\Project1\Matlab
SVN\Project2\C#
SVN\Project2\SQL
SVN\Project2\Matlab
Or maybe there's a better way to do this?
Also, what is the best way to indicate in the Projects folders (not SVN) that a project contains files saved in SVN? Like, if I went into a the project folder for Project1 (Projects\Project1) and only saw Excel and Word reports, what would be the best way to indicate that there are other files checked into an SVN repository?
Also, how does everyone feel about putting checked out SVN files on shared drives? So for instance, let's say Projects\Project1 contains the following files:
Report1.doc
Script.sql (This is a checked out SVN files in the Projects folder, which is a shared network drive)
In this situation, it would be very easy to see when there are SVN files used with a project, BUT having the checked out SVN file on a shared drive would make collaboration much more difficult. Is this others do to?
svn lock
command. Don't give up on SVN yet, the use case you're describing is not at all uncommon. – Andres F. Feb 03 '12 at 18:00