Pinning all packages in unstable is easy. Just add
Pin: release a=unstable
or similar to
This will hold back all packages in unstable from upgrade by apt or aptitude. Note that there is nothing magic about 50. From
0 < P < 100
causes a version to be installed only if there is no installed version of the package
NOTE: I think this could be better expressed as:
causes a version to be installed only if there is no installable version of higher priority available.
pkg is available in your default release, then the unstable version of
pkg will not be installed by default.
So any number in that range will work.
To install a version from unstable in this case, you will either have to do
apt-get install pkg/unstable pkg/dep1 pkg/dep2 ...
in which case you will have to add additional dependencies manually (as shown, using
dep2 as examples) if they are not available in your current release version, or
apt-get install -t unstable pkg
which will automatically take dependencies from unstable, which you probably don't want do to in general. So, be careful with this latter command.