|I have just started using Mercurial, for a website project in this case.
It is all done on a local repo (backed up), not using BitBucket (or similar host).
This is my first step into version control beyond keeping sepearte folders, one for production (essentially a static folder representing the current live state) and one for development (both feature updates and content). The prior approach was beginning to give me all kinds of headaches when I had an incomplete feature but needed to update the content, keeping the two folders in sync (for content only) was horrid.
I started by doing the features in a clone and content updates in the original. Then Pulling the Feature clone into the original clone (and managing conflicts was a pita but not really that bad), but have now switched to using named branches and it's working absolutely fine. I haven't tried bookmarks yet, simply haven't found a reason that has caused me to understand what they do differently to named branches).
The one thing I can't work out how to do is to move single changesets from one branch to another. Let's say I have a feature branch that has 5 changesets but is incomplete, then I need to make a bug fix to the live site. I make the bug fix in the default branch and want to push it into the feature branch but without merging - otherwise the merge would have an incomplete (broken) feature!
For clarity I need to get the bug fix out to the live server and whilst I might do the work in a new branch, once done it would get merged back into the default, so once again I'd have two branches, default and the feature branch.
I think, from descriptions I have read (but haven't tried), that this kind of thing is pretty easy to do when you are using BitBucket (or similar host), you just pull the specific changeset (and its history) into your local clone. So I imagine it's also easy to do so between local clones (again I haven't tried it), but for lone nor money i can't work out how to do it within a single repo - i.e. between local branches.
Any help gratefully received.