This is perhaps not a question unique to Mercurial, but that\'s the SCM that I\'ve been using most lately.
I work on multiple projects and tend to copy source code f
use the transplant extension
I'd recommend against your "copy the sourcecode" practice but use binary distribution for your custom libraries instead. These binaries are checked in along the sourcecode.
EDIT: And for the issue with "common" or "toolbox" libaries in general, read this post from ayende.
Three solutions, pick your favorite:
Copying actual files between repositories with no common ancestors will never be optimal as history is not preserved.