I have a product that I distribute to my clients. Each client needs some UI customization. I want each client to be able to get updated with new version easily.
Can I create a project in svn that serves as a “base project”, and then create branches for each client? With that said, will I then be able to commit changes in a branch to the branch, with the option of pushing that change to the core? Can I also perform and “update” command in a branch that will only update changes to the core?
Yes, you can do all the things that you mentioned with svn!
You can “merge” branches to the core specifying the start and end revision numbers that you want to merge to the trunk (core).
Branches act as separate thing from your trunk(core), so when you commit to a branch the changes just reside in the branch, unless you explicitly merge it to the trunk.