No, I remove all indenting and extraneous whitespace from HTML/markup prior to it being displayed but retain all linebreaks. It's simple for my workflow because I work with templating systems (Smarty) and the template output just gets run through an output-filter that strips all the whitespace automatically. The compacted output is cached and the job's done without needing to ever worry about maintaining it.
Javascript files are normally compacted to one-liner files, unless they're also generated via a template, in which case they also go though the same process above. Otherwise, yes, two versions are maintained.
I don't touch CSS files, but I never indent CSS anyway.
For extra bonus points javascript and CSS are both sent down the line using gzip compression, which can yield some really impressive results.
For example, take Yahoo!'s YUI javascript library.
event.js, the
incredibly useful library for event handling is 43KB in its original state

. It would be silly to have that loading for each user - it's not
that good! However, stripped down (inc. comments) it drops down to only 8KB. The thoughtful Yahoo devs even supply a version pre-crushed.
Then send it gzip compressed and it's just three tiny kilobytes. So, yes, in my mind, it's very worthwhile and potentially very rewarding to spend a little extra time optimising filesize any way you can. That applies to anything that gets sent down the pipes - images, CSS, html...
Any bandwidth saving, however small, is good as long as the processing requirement doesn't outweigh it.
As for PHP/serverside scripts, they stay indented and formatted. There would be no benefit derived from stripping whitespace other than saving diskspace.