Lambda thus provides few add-on services that help you better categorize, and manage functions in the form of versions and aliases.
Versioning is a simple way to create one or more versions of your working Lambda code. Each version that you create is basically a snapshot of your origin function. Versions are also immutable which means, that each version you create from the origin or [$LATEST] branch cannot be edited or its configuration parameters change as well. Lambda assigns simple incremental version numbers (1, 2, 3, ..., n) to your versions each time they are created.
Following is a simple example depicting a function and its associated versions. Note however, that the version numbers are never reused, even if your function gets deleted or re-created: