The recommended Subversion directory layout contains trunk, tags and branches directories:
Project
|-branches
|- ...
|-tags
|- ...
|-trunk
Is there a generic name for referring to the three directories: trunk, tags, and branches? Let's say for naming a variable: list x = ["branches/...", "tags/...", "trunk" ].)
Base on what I observed in different open source projects, I usually use this convention (Assume we are adopting trunk-based development, and making use of release-branch and feature-branch branching strategies)
Basic layout:
Directory name for trunk/tags/branches are pretty standard. I usually separate feature branches from release branches to avoid confusion. However there is no standard directory for feature branches. "sandboxes" are one name that I have seen. You can consider something else you like
For tag name, quite a lot of project use
proj-name-VERSION. For example, tag forfooproject version 1.2.3 is going to be tagged asfoo-1.2.3For branch name, it depends on how you arrange your version and release. One typical way is having version as MAJOR.MINOR.MICRO. Incrementation of MAJOR or MINOR is going to be a new release, while MICRO is used for bug fixes for a release. In such case, we usually create release branch for MAJOR.MICRO.x. For example, upon release of
fooversion 1.0, you should create a release branch forfooversion1.0.x. Branch name is usuallyfoo-1.0orfoo-1.0.xFor feature branches, simply name it base on the feature. No special convention I observed.