Please type a comment if you find any errors :)
Essence of Subversion
- an svn repository is basically a "hard drive", where the repository root is the root of the "disk". There is no such thing as a "module", "branch", "tag" nor "trunk". Everything is either a "folder" or a "file".
- a "module", "branch", "tag" or "trunk" exists solely by naming convention and standard definition. Normal convention says that a module should be in a directory in the "root", branches should reside in a "
[module]/branches" folder, tags in " [module] [module]/tags" and trunk in " /trunk". - a repository has a single repository counter that is incremented for each commit. All files/dirs in a single commit is given the same number from this counter.
The repository counter (a.k.a. revision number) can be viewed as "the number of times the repository has changed". If you check out the whole repository with rev #5, it means you will get the state of this "disk" after the 5th commit. To pick a specific version of a file, you need to know its location and the commit number for the wanted version.