
No, there is a fundamental difference between svn and git. Let me elaborate.
In svn, by "branch" we just mean a branch of the file tree in the repository. The repository as a whole has a single history which is a linear sequence of revisions. So of course you can make a feature branch, but a commit to that feature branch is really also a commit to all other branches, the trunk and all tags -- and vice versa.
This is just wrong. A commit (or revert) to a branch is a commit to that branch only. And don't tell me that the shared version number is a problem.
If at second thought you don't like your last three commits to the feature branch, you can't just revert history because that might also undo, say, the last twenty commits other people made to trunk. So you always have to manually select which files or subtrees to revert.
You're wrong, again. This is completely possible and even simple. I only have to select (including cherry picking) the commits I want to revert. The level of wrongness in this email (at least the quoted part above) is such that it is hard for me to keep calm. I am, admittedly, biased toward SVN. I can accept that DCVS systems like git may improve the workflow on projects like boost, but you're twisting facts. I am currently wondering whether you did that on purpose or not. Sorry if this was too strong, I am not perfect myself and make mistakes too. I would like to keep the discussion in a cordial tone if possible. Julien