Reputation: 976
My company uses subversion. We use the tags folder in order to:
Store a picture of what the customer has on it's server, so that if we have to fix a bug or do any activity we know exactly what the client has
Since tags are immutable versions of an application, we think that the use we make of the tags folder is correct.
Now we are moving the repository and thinking about improving it's management a bit; a best practice doubt has arisen about WHERE to put the tags folder.
At the moment, the structure we are using is the classic one, i.e this:
But part of the refactoring/cleaning team suggests to try this way:
In the second structure, it would be clearer which products the customer have. In case of tech support activity, developers would directly look for the customer's folder within tags, no need to know from a colleague which products the client has and then trace those tags by entering all project's folder individually.
Which structure is the clearest and the more maintainable?
Thanks!!!
Upvotes: 0
Views: 30
Reputation: 97285
There are not such thing as "classic layout" of SVN-repository, there are only some recommended for different use-cases with own sets of "pro" et "contra" and you can select any or create own. Anyway, "branches", "tags", "trunk" is just a conventional way to use different parts of repository tree for different purposes - you can build own tree even with own names for your needs and habits.
While second picture seems more nice for eyes, it can have some rake in the grass under the some conditions.
Think about these:
ProjectN
|Tags
folders (with all inherited problems of super-repo - global versioning, shared hooks)? SVN-admin will not thank you for a such headacheFrom my POV, best (easy, manageable, natural) approach will be using (PEG-ed?) SVN-externals, with which you can add additional custom tree (Client -> Project -> Snapshot) from existing objects outside development-area
Externals Definitions from SVN Book
How to get started with svn:externals? from here
Peg and Operative Revisions from SVN Book
Upvotes: 1