I find myself writing small test cases and applications to post bug cases, answer questions in some forums, make feature showcases for clients, etc. and for that I created a TestCases project inside my workspace.
Now, I want to keep track of all these small and unrelated applications in case I need to go back to them, mainly to reuse the most similar one as a starting point for a new test case or application. For instance, application A is an application I wrote a couple of weeks ago to answer in SO, and now I need to use it as a starting point for application B (which is for a similar question in another forum). When I do this, I don't want to lose the ability to go back to application A's current state, because another case in the future could make use of it. But I also want to be able to keep track of the new application B's final state, as its more advanced state (compared to that of application A) could be useful for future cases.
One important piece of information is that the applications are developed using a particular framework and some common technologies, so each application, if managed independently, would require an initial set up time that would alone take more time than I would like to spend on making these applications. So it's not single file applications, but small applications that require several source code and resource files to work.
I am considering creating a new branch per application, by default from the trunk, and if I need to base a new application on an existing one, I will start this new branch from the existing application's branch.
What are the drawbacks of following this approach?