When there is more than one term for essentially the same thing, it usually is because people from different communities (that talk little to each other) try to do the same thing. This probably is also the case here.
Incremental clustering and online clustering are largely the same thing IMHO. Incremental clustering may be a bit more batch oriented that online clustering.
Data stream clustering is similar, but usually makes the assumption that "old" data is of less importance. As such, it will often discard old data, and only keep "summaries" of it for clustering.
So "online" and "stream" often differ in that in the first case it is commonly expected that the result will be exactly the same as if all the data had been available in the first place; in the second case, old data is considered unavailable, and the summaries are just updated for the new data. Things such as "concept drift" come into existence here.
Now for the last one, single-pass means that you are supposed to process every element just once (and not copy it). Such algorithms obviously must be in linear time, which makes them good candidates for big data and MapReduce (if they can be somewhat divided, this is not necessarily trivial).
Single-pass doesn't necessarily mean the results will be updateable and thus usable for online or streaming operation. However they often are, as they never need to access "old" data, and the summaries they are allowed to keep usually can be kept and updated.
Single-pass are mostly interesting when you have too much data to keep or process more than once. So for "real time" applications and such. Obviously, the results will usually be worse than when you had full data available anytime.