# KostaCLOUD Version Control 101

There are a few types of version control which exist in KostaCLOUD

1. Versioning
2. Version
3. Fork

## What is a Versioning?

Versionings are what you can think of as a local save. Say you do something in KostaCLOUD, like insert a lens, what this does is creates something called a versioning, which is a simple way of saying it saves the lens you just made to KostaCLOUD.

## What is a Version?

A Version is a natural saving point, and logical organization tool that you can use to represent a sub-design. Imagine that you are developing a system by yourself, and you come up with some amazing lens configuration without the help of your colleagues, then your colleagues look at your design, and suggest to change a few things. You might want to save a version at this point, just so that you can come back to your original design if the suggested changes made don't pan out. This can also be thought of as a natural linear evolution of a design.&#x20;

Versions in the context of KostaCLOUD are actually just collections of Versionings, which make up the project to a particular design.

## What is a Fork?

A Fork is just like a Version, and in fact the only reason to use a Fork in the context of KostaCLOUD would be to differentiate a major design aspect such as a different design intent, which may stem from the same base system. For example, imagine that you are starting with the same cooke triplet, but then you have two different independent design variants which are both being manufactured, these would be considered "Forks". Each Fork can have multiple versions after the Fork. Forks can even have forks!

Forks in the context of KostaCLOUD are also just collections of Versionings, which make up the project up to a particular design.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kostacloud.com/kostacloud-version-control/kostacloud-version-control-101.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
