Every time a pipeline is published, a new version is created. The vesion history of a pipeline is available via the History tab on the pipeline source code page:
It is possible to view past versions of a pipeline, including who edited them and when, by selecting a past version. Pipeline source code from a past version can be copied and pasted into the current pipeline editor.
You can also compare the source code of any 2 versions by selecting 2 checkboxes. Differences between the versions are graphically highlighted. The latest version of the pipeline is always on the left.
During iterative development of a pipeline, to avoid the creation of many versions of a pipeline, it is recommended to use the Test button instead of the Publish button. The Test button performs all processing up to the point of the final commit, including the batch preview, so you should be able to fully test a pipeline and preview its results without having to publish at each iteration. This makes the version history more meaningful. The Debug switch, by the way, is also useful.