It (having a private and public branch) will not work (nicely) with SVN.
What you can do is use a distributed version control software : git, mercurial, bazaar, fossil... you have choice. mercurial might be the simpler to learn and it might be a good introduction to the concept of distributed repositories.
In those systems, you have a full-history repository on your computer, and can put somewhere else (maybe online in a public access) a clone of it.
You work on your local repository (you even can have several) then commit in local. Each commit will not move out of your repository, it will stay there.
Until you pull from or push to other repositories. Those are transactions (push/pull) of changes between repositories (your's, a clone of your's with some special modifications, a friend's repo, a teammate repo, a dev team repo, a public repo, what you want).
As the organisation is free, in your specific case you certainly want to have a private team repo somewhere where your teammates will get and put changes in, and another public repo (maybe on bitbucket.org, or github.org if your choose git) that will not move until you decide to push your team repo changes in the public repo.
I'm currently setting exactly that for a project by the way.