リポジトリへのタグの追加は svn copy で行います。
コマンドプロンプトで、カレントディレクトリをリポジトリのディレクトリにして、
タグを付加するといっても、実際はその時点のリポジトリを別の場所にコピーするだけの操作です。したがって、分岐もタグの付加と同じ操作で行います。(特定のタグをチェックアウトしてきて、そこへコミットすれば、それは分岐ということになります。)
Subversionでは、上図のディレクトリ構造を作ってリポジトリを管理するのが一般的になっているようです。あるモジュール・プロジェクトのディレクトリを作ったら、その下にbrunches tags trunk の三つのディレクトリを作ります。
最初、すべてのファイルは、trunk に追加してコミットしていきます。ある段階で、タグを振る場合は、copy コマンドを使って tags ディレクトリ内にコピーします。同様に分岐させる場合は、brunches にcopy コマンドでコピーします。
subversionではたいてい、この形式をとっており、cvs2svnでコンバートしてもこの形式に変換されるので、subversionではこう管理するのが、セオリーだと考えたほうが良いでしょう。