If I right click on a component within a repository workspace I have the option create a new baseline on this component.
But if I right click on a component from within a stream the option to create a new baseline is not available.
A baseline must always be created against a repo workspace, as it must be delivered to the stream, and accepted by other collaborators working on the same stream in their respective repo workspaces.
This is different from a snapshot, that you can create on the stream, and which allows both users and the build manager in RTC to take a "snapshot" of a code delivered.
So the difference between snapshot and baseline is that:
This thread is instructive:
If you are flowing changes to developers, or flowing changes to the build, then you should do so by delivering those changes to a stream, not by creating snapshots.
The developers (or the build) will then just accept changes from that stream.
(That is where Baselines comes from: for each component, they allow to flow a frozen set of changes)
The purpose of a snapshot is to record a point in history, so you can "jump to it" (for example, to reproduce an old configuration), and not as a mechanism for flowing changes.
This is different from ClearCase UCM, in that "Stream" was both for common collaboration space (like an "integration" stream) and user workspace (like "development stream").
The Baseline was both to record a point in history, and to flow changes (through deliver/rebase).
RTC introduces 2 separates environment: