I'm thinking of moving to SVN from mercurial because it seems simpler to maintain and more people have an SVN client than a mercurial client available. However I have a question regarding file structure -
I understand that the typical proper SVN structure goes:
/trunk
..../current version files here
/branch
..../bugfix
..../newfeature
..../branch3
..../branchN
/tag
..../version 1.0
..../version 2.0
..../version n.n
My question is how does this factor into multiple OSes? My software currently has separate mercurial repositories for the GUI/CLI versions of my software for each OS since you can't only checkout a directory in mercurial. However, I understand you can in SVN. Would the structure look like:
/Windows (or Linux, or whatever)
/trunk
..../CLI
...../current version files here
..../GUI
...../current version files here
/branch
..../CLI
...../bugfix
...../newfeature
...../branch3
...../branchN
..../GUI
...../bugfix
...../newfeature
...../branch3
...../branchN
/tag
..../CLI
...../version 1.0
...../version 2.0
...../version n.n
..../GUI
...../version 1.0
...../version 2.0
...../version n.n
Or am I making this far too complicated? Would you recommend storing the GUI version in a separate repository? Also in which of these typical directories are precompiled executables stored?
I understand these questions may seem novice, but the truth is I'm completely new to SVN. Thank you for your help!