> ## Documentation Index
> Fetch the complete documentation index at: https://docs.kameleoon.com/llms.txt
> Use this file to discover all available pages before exploring further.

# VS Code-Erweiterung

> Schreiben und testen Sie Kameleoon-Experimentcode direkt in Visual Studio Code mit Live-Injection über die Kameleoon Chrome-Erweiterung.

Da Experimente immer komplexer werden, bringt es Herausforderungen mit sich, sicherzustellen, dass sie effektiv funktionieren und fehlerfrei bleiben. Bisher hatten Entwickler zwei Möglichkeiten:

* JavaScript-Code direkt in Kameleoon schreiben und die Previsualization-Funktion verwenden, um ihn zu prüfen.
* Code in die Chrome-Entwicklerkonsole kopieren und einfügen.

Beide Methoden waren umständlich, verringerten die Produktivität der Entwickler und konnten die Produktionsbedingungen manchmal nicht nachstellen oder zeigten Unterschiede bei der Simulation des Experimentverhaltens.

Entwickler können jetzt JavaScript- oder TypeScript-Code in **Microsoft Visual Studio Code** mithilfe der Kameleoon Visual Studio Code-Erweiterung schreiben. Die Erweiterung erkennt Aktualisierungen automatisch und sendet sie über die Chrome-Erweiterung von Kameleoon an den Browser. Chrome injiziert dann den neuen Code in die Kameleoon-Engine und lädt die Seite automatisch neu. Visual Studio Code ist die erste Entwicklungsumgebung, die sich in Kameleoon integriert; weitere können je nach Kundenwünschen folgen.

## Installation

Sie können die Erweiterung jetzt aus dem [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=Kameleoon.kameleoon) installieren.

[Visual Studio marketplace](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-1.png)

## Erste Schritte

Der erste Schritt besteht in der Initialisierung des VS Code-Projekts. Zur Initialisierung gehen Sie zur Befehlspalette und führen den Befehl **Kameleoon - Initialize** aus.

<Note>
  Drücken Sie *Ctrl+Shift+P*, um die *Befehlspalette* zu öffnen, und beginnen Sie dann mit der Eingabe von "Kameleoon - Initialize", um den Befehl *Kameleoon - Initialize* zu filtern und anzuzeigen.
</Note>

Stellen Sie die [Kameleoon Automation API-Anmeldedaten](/user-manual/account-and-team-management/users-and-teams/api-credentials) bereit, damit die Bridge sich authentifizieren und mit der Plattform kommunizieren kann. Sobald Sie die Anmeldedaten aus dem [Profil](/user-manual/account-and-team-management/users-and-teams/api-credentials) erhalten haben, fügen Sie sie der Datei **credentials.json** im Root-Verzeichnis des Repositorys hinzu:

```json theme={null}
{
"client_id": "YOUR_CLIENT_ID",
"client_secret": "YOUR_CLIENT_SECRET"
}
```

Installieren Sie schließlich die erforderlichen NodeJS-Module, indem Sie diesen Befehl ausführen:

```shell theme={null}
npm install
```

### Aus dem Kameleoon-Konto importieren

Importieren Sie alle Projekte, Experimente, Personalisierungen, Variationen, Segmente, Ziele und benutzerdefinierten Daten mit dem Befehl **Kameleoon - Import all projects**.

Wenn das Kameleoon-Konto zu groß ist, um alles auf einmal zu laden, verwenden Sie den Befehl **Kameleoon - Import project**, um ein einzelnes zu importierendes Projekt auszuwählen.

## Verwendung

### Entitäten importieren

Sie können eine Entität mit einem der folgenden Befehle importieren:

```shell theme={null}
Kameleoon - Import all projects
Kameleoon - Import project
Kameleoon - Import experiment
Kameleoon - Import personalization
Kameleoon - Import segment
Kameleoon - Import custom data
Kameleoon - Import goal
```

### Entitäten erstellen

Sie können eine Entität mit einem der folgenden Befehle erstellen:

```shell theme={null}
Kameleoon - Create experiment
Kameleoon - Create personalization
Kameleoon - Create variation
Kameleoon - Create goal
Kameleoon - Create segment
Kameleoon - Create custom data
```

### Entitäten duplizieren

Sie können eine Entität mit einem der folgenden Befehle duplizieren:

```shell theme={null}
Kameleoon - Duplicate experiment
Kameleoon - Duplicate personalization
Kameleoon - Duplicate variation
Kameleoon - Duplicate goal
Kameleoon - Duplicate segment
Kameleoon - Duplicate custom data
```

### Entitäten abrufen

Sie können Ihre lokale Entität mit einem der folgenden Befehle aktualisieren:

```
Kameleoon - Fetch projectKameleoon - Fetch experimentKameleoon - Fetch personalizationKameleoon - Fetch segmentKameleoon - Fetch custom dataKameleoon - Fetch goal
```

### Entitäten bereitstellen

Sie können Ihre lokale Entität mit einem der folgenden Befehle bereitstellen:

```shell theme={null}
Kameleoon - Fetch project
Kameleoon - Fetch experiment
Kameleoon - Fetch personalization
Kameleoon - Fetch segment
Kameleoon - Fetch custom data
Kameleoon - Fetch goal
```

### Synchronisieren

```shell theme={null}
Kameleoon - Synchronize variation code to Chrome
Kameleoon - Synchronize common code to Chrome
Kameleoon - Synchronize global code to Chrome
Kameleoon - Remove synchronization
```

### Ansicht Kameleoon Campaigns

Die Erweiterung bietet eine Ansicht namens **Kameleoon Campaigns**. Diese Ansicht ist im Explorer-Panel verfügbar.

Sie ermöglicht es Ihnen, alle Ihre Projekte und Kampagnen zusammen mit ihrem aktuellen Status und den zugehörigen Variationen zu sehen.

[Kameleoon Campaigns view](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-2.gif)

## Technische Referenz

### Entitäten

Die folgende Tabelle bietet einen Überblick über die Verwaltung von Entitäten mit der VS Code-Erweiterung:

| Projekt                  | Experiment | Personalisierung | Variation | Segment                                                                    | Ziel | Benutzerdefinierte Daten |
| ------------------------ | ---------- | ---------------- | --------- | -------------------------------------------------------------------------- | ---- | ------------------------ |
| \[entity].info.json      | ✓          | ✓                | ✓         | ✓                                                                          | ✓    | ✓                        |
| \[entity].config.json    | X          | ✓                | ✓         | ✓                                                                          | ✓    | ✓                        |
| Hat eigenen Ordner       | ✓          | ✓                | ✓         | ✓                                                                          | ✓    | ✓                        |
| Kann erstellt werden     | X          | ✓                | ✓         | ✓                                                                          | ✓    | ✓                        |
| Kann importiert werden   | ✓          | ✓                | ✓         | X                                                                          | ✓    | ✓                        |
| Kann aktualisiert werden | ✓          | ✓                | ✓         | Nicht einzeln; verwenden Sie fetch-Befehle für Experiment/Personalisierung | ✓    | ✓                        |
| Kann gelöscht werden     | X          | X                | X         | X                                                                          | X    | X                        |

### Projekt

Der Ordner /projects enthält die Projekte anstelle des Root-Verzeichnisses, aufgrund des Ordners /custom-data.

\[projects folder]\([https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-3.png](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-3.png)

Jedes Projekt verfügt über eine eigene Datei **proj.info.json**, die IDs enthält (**site ID** und **sitecode**). Ein Projekt hat keine **proj.config.json**-Datei, da die VS Code-Erweiterung die Projekterstellung nicht unterstützt.

Jedes Projekt kann Experimente, Personalisierungen, benutzerdefinierte Daten, Ziele, Segmente und das globale Skript enthalten.

#### Globales Skript

Das globale Skript befindet sich im Ordner **/projects/\*/global**.

\[Global script]\([https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-4.png](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-4.png)

Da jedes Projekt nur ein globales Skript haben kann, enthält der Ordner des globalen Skripts keine **info.json**- oder **config.json**-Datei. Er enthält nur das Skript selbst.

#### Experiment

Experimente befinden sich im Ordner **/projects/\*/experiments**.

[Experiments folder](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-4.png)

Jedes Experiment hat seinen eigenen Ordner.

Jedes Experiment hat seine eigenen Dateien **exp.config.json** und **exp.info.json**.

<Note>
  Standardmäßig erstellt die Erweiterung den Experimentordner unter Verwendung derselben Namenskonvention wie in früheren Versionen, erstellt aber auch die Dateien **exp.info.json** und **exp.config.json**. Der Ordnername ist nicht wichtig, da nur die Konfigurationsdateien verwendet werden.
</Note>

#### Personalisierung

Personalisierungen befinden sich im Ordner **/projects/\*/personalizations**.

[Personalization folder](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-5.png)

Jede Personalisierung hat ihren eigenen Ordner.

Jede Personalisierung hat ihre eigenen Dateien **perso.config.json** und **perso.info.json**.

<Note>
  Standardmäßig erstellt die Erweiterung den Personalisierungsordner unter Verwendung derselben Namenskonvention wie in früheren Versionen, erstellt aber auch die Dateien **perso.info.json** und **perso.config.json**. Der Ordnername ist nicht wichtig, da nur die Konfigurationsdateien verwendet werden.
</Note>

#### Variation

Variationen sind im zugehörigen Experiment- oder Personalisierungsordner enthalten.

[Variation folder](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-6.png)

Jede Variation hat ihren eigenen Ordner (**auch in einer Personalisierung**).

Jede Variation hat ihre eigenen Dateien **var.config.json** und **var.info.json**.

<Note>
  Standardmäßig erstellt die Erweiterung den Variationsordner unter Verwendung derselben Namenskonvention wie in früheren Versionen, erstellt aber auch die Dateien **var.info.json** und **var.config.json**. Der Ordnername ist nicht wichtig, da nur die Konfigurationsdateien verwendet werden.
</Note>

#### Segment

Segmente befinden sich im Ordner **/projects/\*/segments**.

[Segments folder](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-7.png)

Jedes Segment hat seinen eigenen Ordner.

Jedes Segment hat seine eigenen Dateien **segment.config.json** und **segment.info.json**.

<Note>
  Standardmäßig erstellt die Erweiterung den Segmentordner unter Verwendung derselben Namenskonvention wie in früheren Versionen, erstellt aber auch die Dateien **segment.info.json** und **segment.config.json**. Der Ordnername ist nicht wichtig, da nur die Konfigurationsdateien verwendet werden.
</Note>

#### Ziel

Ziele befinden sich im Ordner **/projects/\*/goals**.

[Goals folder](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-8.png)

Jedes Ziel hat seinen eigenen Ordner.

Jedes Ziel hat seine eigenen Dateien **goal.config.json** und **goal.info.json**.

<Note>
  Standardmäßig erstellt die Erweiterung den Zielordner unter Verwendung derselben Namenskonvention wie in früheren Versionen, erstellt aber auch die Dateien **goal.info.json** und **goal.config.json**. Der Ordnername ist nicht wichtig, da nur die Konfigurationsdateien verwendet werden.
</Note>

#### Benutzerdefinierte Daten

Benutzerdefinierte Daten befinden sich im Ordner **/projects/\*/custom-data**.

[Custom-data folder](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-9.png)

Jede benutzerdefinierte Daten haben ihren eigenen Ordner.

Jede benutzerdefinierte Daten haben ihre eigenen Dateien **custom.config.json** und **custom.info.json**.

<Note>
  Standardmäßig erstellt die Erweiterung den Ordner der benutzerdefinierten Daten unter Verwendung derselben Namenskonvention wie in früheren Versionen, erstellt aber auch die Dateien **custom.info.json** und **custom.config.json**. Der Ordnername ist nicht wichtig, da nur die Konfigurationsdateien verwendet werden.
</Note>

### Befehle

#### Initialisierungsbefehle

##### Kameleoon - Initialize

**Kameleoon - Initialize** ist der erste Befehl, der zu Beginn eines neuen VS Code-Projekts ausgeführt werden soll.

Dieser Befehl initialisiert das Visual Studio Code-Projekt, indem er die folgenden Dateien erstellt:

```
credentials.jsongulpfile.jspackage.jsonREADME.md
```

Nach der Ausführung des Befehls wird die Datei **credential.json** im Editor geöffnet.

##### Zugänglichkeit

| Befehl                 | Rechtsklick-Menü | Befehlspalette |
| ---------------------- | ---------------- | -------------- |
| Kameleoon - Initialize | X                | ✓              |

#### Importbefehle

Importbefehle importieren fehlende Entitäten. Wenn der Entitätsordner bereits existiert, importiert der Befehl ihn nicht. Importbefehle gelten beim Importieren einer neuen Entität. Verwenden Sie fetch-Befehle, um Entitäten auf die neuesten Versionen zu aktualisieren.

##### Kameleoon - Import all projects

Dieser Befehl erstellt den Ordner /projects und importiert alle Projekte, wobei jeder Projektordner, jeder Unterordner und jede Datei erstellt wird.

##### Zugänglichkeit

| Befehl                          | Rechtsklick-Menü                     | Befehlspalette |
| ------------------------------- | ------------------------------------ | -------------- |
| Kameleoon - Import all projects | Rechtsklick auf den Ordner /projects | ✓              |

##### Kameleoon - Import project

Dieser Befehl importiert ein bestimmtes Projekt unter den Ordner **/projects** und erstellt somit die Ordner und Dateien für jede zugehörige Entität.

##### Zugänglichkeit

| Befehl                     | Rechtsklick-Menü | Befehlspalette                           |
| -------------------------- | ---------------- | ---------------------------------------- |
| Kameleoon - Import project | ✕                | Befehl ausführen und eine Site auswählen |

##### Kameleoon - Import experiment

Dieser Befehl importiert ein bestimmtes Experiment unter das Projekt und erstellt somit die Ordner und Dateien des Experiments (einschließlich der Dateien **exp.info.json** und **exp.config.json** sowie der Variationen).

##### Zugänglichkeit

| Befehl                        | Rechtsklick-Menü | Befehlspalette                        |
| ----------------------------- | ---------------- | ------------------------------------- |
| Kameleoon - Import experiment | ✕                | Befehl ausführen und eine ID eingeben |

##### Kameleoon - Import personalization

Dieser Befehl importiert eine bestimmte Personalisierung unter das Projekt und erstellt somit die Ordner und Dateien der Personalisierung (einschließlich der Dateien **perso.info.json** und **perso.config.json** sowie der einzigartigen Variation).

##### Zugänglichkeit

| Befehl                             | Rechtsklick-Menü | Befehlspalette                        |
| ---------------------------------- | ---------------- | ------------------------------------- |
| Kameleoon - Import personalization | ✕                | Befehl ausführen und eine ID eingeben |

##### Kameleoon - Import goal

Dieser Befehl importiert ein bestimmtes Ziel unter das Projekt und erstellt somit die Ordner und Dateien des Ziels (**goal.config.json** und **goal.info.json**).

##### Zugänglichkeit

| Befehl                  | Rechtsklick-Menü | Befehlspalette                        |
| ----------------------- | ---------------- | ------------------------------------- |
| Kameleoon - Import goal | ✕                | Befehl ausführen und eine ID eingeben |

##### Kameleoon - Import segment

Dieser Befehl importiert ein bestimmtes Ziel unter das Projekt und erstellt somit die Ordner und Dateien des Segments (**segment.config.json** und **segment.info.json**).

##### Zugänglichkeit

| Befehl                     | Rechtsklick-Menü | Befehlspalette                        |
| -------------------------- | ---------------- | ------------------------------------- |
| Kameleoon - Import segment | ✕                | Befehl ausführen und eine ID eingeben |

##### Kameleoon - Import custom data

Dieser Befehl importiert eine bestimmte benutzerdefinierte Daten unter das Projekt und erstellt somit die Ordner und Dateien der benutzerdefinierten Daten (**custom.config.json** und **custom.info.json**).

##### Zugänglichkeit

| Befehl                         | Rechtsklick-Menü | Befehlspalette                        |
| ------------------------------ | ---------------- | ------------------------------------- |
| Kameleoon - Import custom data | ✕                | Befehl ausführen und eine ID eingeben |

Fetch-Befehle sind über das Rechtsklick-Menü auf einem Entitätsordner verfügbar, der eine gültige Datei **\[entity-prefix].info.json** mit einer ID enthält und im jeweiligen gemeinsamen Entitätsordner verschachtelt ist. Fetch-Befehle überschreiben Entitätsdateien vollständig mit der API-Antwort.

| Befehl                            | Rechtsklick-Menü                                          | Befehlspalette | Befehlsordner                 | Info-Datei        |
| --------------------------------- | --------------------------------------------------------- | -------------- | ----------------------------- | ----------------- |
| Kameleoon - Fetch project         | Rechtsklick auf einen Projektordner                       | ✕              | /projects                     | proj.info.json    |
| Kameleoon - Fetch experiment      | Rechtsklick auf einen Experimentordner                    | ✕              | /projects/\*/experiments      | exp.info.json     |
| Kameleoon - Fetch personalization | Rechtsklick auf einen Experimentordner                    | ✕              | /projects/\*/personalizations | perso.info.json   |
| Kameleoon - Fetch segment         | Rechtsklick auf einen Segmentordner                       | ✕              | /projects/\*/segments         | segment.info.json |
| Kameleoon - Fetch goal            | Rechtsklick auf einen Zielordner                          | ✕              | /projects/\*/goals            | goal.info.json    |
| Kameleoon - Fetch custom data     | Rechtsklick auf einen Ordner für benutzerdefinierte Daten | ✕              | /projects/\*/custom-data      | custom.info.json  |

##### Kameleoon - Fetch project

Dieser Befehl überschreibt Projektdateien und -ordner (einschließlich Experimente, Personalisierungen, Variationen, Segmente, benutzerdefinierte Daten und globales Skript) mit der neuesten Version. Dieser Befehl erstellt auch Dateien und Ordner für Experimente, Personalisierungen, Variationen, Segmente, benutzerdefinierte Daten und globale Skripte, wenn Entitäten oder Dateien fehlen.

##### Zugänglichkeit

| Befehl                    | Rechtsklick-Menü                    | Befehlspalette |
| ------------------------- | ----------------------------------- | -------------- |
| Kameleoon - Fetch project | Rechtsklick auf einen Projektordner | ✕              |

##### Kameleoon - Fetch experiment

Dieser Befehl überschreibt Experimentdateien und -ordner (einschließlich Variationen) mit der neuesten Version. Dieser Befehl erstellt auch Variationsordner und -dateien, wenn Variationen oder Dateien fehlen.

##### Zugänglichkeit

| Befehl                       | Rechtsklick-Menü                       | Befehlspalette |
| ---------------------------- | -------------------------------------- | -------------- |
| Kameleoon - Fetch experiment | Rechtsklick auf einen Experimentordner | ✕              |

##### Kameleoon - Fetch personalization

Dieser Befehl überschreibt Personalisierungsdateien und -ordner (einschließlich der einzigartigen Variation) mit der neuesten Version. Dieser Befehl erstellt auch Variationsdateien und -ordner, wenn sie fehlen.

##### Zugänglichkeit

| Befehl                            | Rechtsklick-Menü                              | Befehlspalette |
| --------------------------------- | --------------------------------------------- | -------------- |
| Kameleoon - Fetch personalization | Rechtsklick auf einen Personalisierungsordner | ✕              |

##### Kameleoon - Fetch segment

Dieser Befehl überschreibt Ihre Segmentdateien und -ordner mit der neuesten Version.

##### Zugänglichkeit

| Befehl                    | Rechtsklick-Menü                    | Befehlspalette |
| ------------------------- | ----------------------------------- | -------------- |
| Kameleoon - Fetch segment | Rechtsklick auf einen Segmentordner | ✕              |

##### Kameleoon - Fetch goal

Dieser Befehl überschreibt Ihre Zieldateien und -ordner mit der neuesten Version.

##### Zugänglichkeit

| Befehl                 | Rechtsklick-Menü                 | Befehlspalette |
| ---------------------- | -------------------------------- | -------------- |
| Kameleoon - Fetch goal | Rechtsklick auf einen Zielordner | ✕              |

##### Kameleoon - Fetch custom data

Dieser Befehl überschreibt Ihre Dateien und Ordner für benutzerdefinierte Daten mit der neuesten Version.

##### Zugänglichkeit

| Befehl                        | Rechtsklick-Menü                                          | Befehlspalette |
| ----------------------------- | --------------------------------------------------------- | -------------- |
| Kameleoon - Fetch custom data | Rechtsklick auf einen Ordner für benutzerdefinierte Daten | ✕              |

#### Erstellungsbefehle

##### Kameleoon - Create experiment

Dieser Befehl erstellt ein neues Experiment unter dem Projekt, zusammen mit den Ordnern und Dateien des Experiments (einschließlich der Dateien **exp.info.json** und **exp.config.json** und der ersten Variation), wie in diesem Dokument beschrieben.

##### Zugänglichkeit

| Befehl                        | Rechtsklick-Menü                        | Befehlspalette |
| ----------------------------- | --------------------------------------- | -------------- |
| Kameleoon - Create experiment | Rechtsklick auf den Ordner /experiments | ✓              |

##### Kameleoon - Create variation

Dieser Befehl erstellt eine neue Variation unter dem Experiment zusammen mit dem Variationsordner und den Dateien (einschließlich der Dateien **var.info.json** und **var.config.json**), wie in diesem Dokument beschrieben.

##### Zugänglichkeit

| Befehl                       | Rechtsklick-Menü                       | Befehlspalette |
| ---------------------------- | -------------------------------------- | -------------- |
| Kameleoon - Create variation | Rechtsklick auf einen Experimentordner | ✕              |

##### Kameleoon - Create personalization

Dieser Befehl erstellt eine neue Personalisierung unter dem Projekt, zusammen mit den Ordnern und Dateien der Personalisierung (einschließlich der Dateien **perso.info.json** und **perso.config.json** und der einzigartigen Variation), wie in diesem Dokument beschrieben.

##### Zugänglichkeit

| Befehl                             | Rechtsklick-Menü                             | Befehlspalette |
| ---------------------------------- | -------------------------------------------- | -------------- |
| Kameleoon - Create personalization | Rechtsklick auf den Ordner /personalizations | ✓              |

##### Kameleoon - Create goal

Dieser Befehl erstellt ein neues Ziel unter dem Projekt, zusammen mit dem Zielordner und den Dateien (einschließlich der Dateien **goal.info.json** und **goal.config.json**), wie in diesem Dokument beschrieben.

##### Zugänglichkeit

| Befehl                  | Rechtsklick-Menü                  | Befehlspalette |
| ----------------------- | --------------------------------- | -------------- |
| Kameleoon - Create goal | Rechtsklick auf den Ordner /goals | ✓              |

##### Kameleoon - Create segment

Dieser Befehl erstellt ein neues Segment unter dem Projekt, zusammen mit dem Segmentordner und den Dateien (einschließlich der Dateien **seg.info.json** und **seg.config.json**), wie in diesem Dokument beschrieben.

##### Zugänglichkeit

| Befehl                     | Rechtsklick-Menü                     | Befehlspalette |
| -------------------------- | ------------------------------------ | -------------- |
| Kameleoon - Create segment | Rechtsklick auf den Ordner /segments | ✓              |

##### Kameleoon - Create custom data

Dieser Befehl erstellt neue benutzerdefinierte Daten im Kameleoon-Konto und im Ordner **/custom-data**, einschließlich des Ordners und der Dateien der benutzerdefinierten Daten (einschließlich der Dateien **custom.info.json** und **custom.config.json**), wie in diesem Dokument beschrieben.

##### Zugänglichkeit

| Befehl                         | Rechtsklick-Menü                        | Befehlspalette |
| ------------------------------ | --------------------------------------- | -------------- |
| Kameleoon - Create custom data | Rechtsklick auf den Ordner /custom-data | ✓              |

#### Duplizierungsbefehle

##### Kameleoon - Duplicate experiment

Dieser Befehl dupliziert ein Experiment unter demselben Projekt. Er dupliziert die Ordner und Dateien des Experiments, jedoch mit einer anderen ID und einem anderen Namen.

##### Zugänglichkeit

| Befehl                           | Rechtsklick-Menü                                  | Befehlspalette |
| -------------------------------- | ------------------------------------------------- | -------------- |
| Kameleoon - Duplicate experiment | Rechtsklick auf einen bestimmten Experimentordner | ✕              |

##### Kameleoon - Duplicate variation

Dieser Befehl dupliziert eine Variation unter demselben Experiment. Er dupliziert die Ordner und Dateien der Variation, jedoch mit einer anderen ID und einem anderen Namen.

##### Zugänglichkeit

| Befehl                          | Rechtsklick-Menü                                  | Befehlspalette |
| ------------------------------- | ------------------------------------------------- | -------------- |
| Kameleoon - Duplicate variation | Rechtsklick auf einen bestimmten Variationsordner | ✕              |

##### Kameleoon - Duplicate personalization

Dieser Befehl dupliziert eine Personalisierung unter demselben Projekt. Er dupliziert die Ordner und Dateien der Personalisierung, jedoch mit einer anderen ID und einem anderen Namen.

##### Zugänglichkeit

| Befehl                                | Rechtsklick-Menü                                         | Befehlspalette |
| ------------------------------------- | -------------------------------------------------------- | -------------- |
| Kameleoon - Duplicate personalization | Rechtsklick auf einen bestimmten Personalisierungsordner | ✕              |

##### Kameleoon - Duplicate segment

Dieser Befehl dupliziert ein Segment unter demselben Projekt. Er dupliziert die Ordner und Dateien des Segments, jedoch mit einer anderen ID und einem anderen Namen.

##### Zugänglichkeit

| Befehl                        | Rechtsklick-Menü                               | Befehlspalette |
| ----------------------------- | ---------------------------------------------- | -------------- |
| Kameleoon - Duplicate segment | Rechtsklick auf einen bestimmten Segmentordner | ✕              |

##### Kameleoon - Duplicate goal

Dieser Befehl dupliziert ein Ziel unter demselben Projekt. Er dupliziert die Ordner und Dateien des Ziels, jedoch mit einer anderen ID und einem anderen Namen.

##### Zugänglichkeit

| Befehl                     | Rechtsklick-Menü                            | Befehlspalette |
| -------------------------- | ------------------------------------------- | -------------- |
| Kameleoon - Duplicate goal | Rechtsklick auf einen bestimmten Zielordner | ✕              |

##### Kameleoon - Duplicate custom data

Dieser Befehl dupliziert benutzerdefinierte Daten unter demselben Projekt. Er dupliziert die Ordner und Dateien der benutzerdefinierten Daten, jedoch mit einer anderen ID und einem anderen Namen.

##### Zugänglichkeit

| Befehl                            | Rechtsklick-Menü                                                     | Befehlspalette |
| --------------------------------- | -------------------------------------------------------------------- | -------------- |
| Kameleoon - Duplicate custom data | Rechtsklick auf einen bestimmten Ordner für benutzerdefinierte Daten | ✕              |

Bereitstellungsbefehle übertragen Änderungen in die Produktion. Das Bereitstellen oder Synchronisieren einer beliebigen Skriptdatei (JS, TS, CSS, SCSS) veranlasst die Erweiterung, den kompilierten Code im Ordner **\_build** zu erstellen und zu speichern.

##### Kameleoon - Deploy global code

Dieser Befehl aktualisiert den globalen Code in der Produktion. Die Bereitstellung des globalen Codes basiert auf der Datei **proj.info.json** des Projekts.

##### Zugänglichkeit

| Befehl                         | Rechtsklick-Menü                                                     | Befehlspalette |
| ------------------------------ | -------------------------------------------------------------------- | -------------- |
| Kameleoon - Deploy global code | Rechtsklick auf einen globalen Ordner oder auf dessen Datei index.js | ✕              |

##### Kameleoon - Deploy experiment

Dieser Befehl aktualisiert das Experiment in der Produktion, basierend auf **exp.config.json**, **exp.info.json**, **common.js**, **common.css** und jedem verschachtelten Variationsordner.

##### Zugänglichkeit

| Befehl                        | Rechtsklick-Menü                                  | Befehlspalette |
| ----------------------------- | ------------------------------------------------- | -------------- |
| Kameleoon - Deploy experiment | Rechtsklick auf einen bestimmten Experimentordner | ✕              |

##### Kameleoon - Deploy variation

Dieser Befehl aktualisiert die Variation in der Produktion, basierend auf den Dateien der Variation, einschließlich **var.config.json** und **var.info.json**.

##### Zugänglichkeit

| Befehl                       | Rechtsklick-Menü                                  | Befehlspalette |
| ---------------------------- | ------------------------------------------------- | -------------- |
| Kameleoon - Deploy variation | Rechtsklick auf einen bestimmten Variationsordner | ✕              |

##### Kameleoon - Deploy personalization

Dieser Befehl aktualisiert die Personalisierung in der Produktion, basierend auf perso.config.json, perso.info.json und dem verschachtelten Ordner mit js- und css-Dateien.

##### Zugänglichkeit

| Befehl                             | Rechtsklick-Menü                                         | Befehlspalette |
| ---------------------------------- | -------------------------------------------------------- | -------------- |
| Kameleoon - Deploy personalization | Rechtsklick auf einen bestimmten Personalisierungsordner | ✕              |

##### Kameleoon - Deploy goal

Dieser Befehl aktualisiert die Zielinformationen in der Produktion, basierend auf den Dateien **goal.config.json** und **goal.info.json**.

##### Zugänglichkeit

| Befehl                  | Rechtsklick-Menü                            | Befehlspalette |
| ----------------------- | ------------------------------------------- | -------------- |
| Kameleoon - Deploy goal | Rechtsklick auf einen bestimmten Zielordner | ✕              |

##### Kameleoon - Deploy segment

Dieser Befehl aktualisiert die Segmentinformationen in der Produktion, basierend auf den Dateien **segment.config.json** und **segment.info.json**.

##### Zugänglichkeit

| Befehl                     | Rechtsklick-Menü                               | Befehlspalette |
| -------------------------- | ---------------------------------------------- | -------------- |
| Kameleoon - Deploy segment | Rechtsklick auf einen bestimmten Segmentordner | ✕              |

##### Kameleoon - Deploy custom data

Dieser Befehl aktualisiert die Segmentinformationen in der Produktion, basierend auf den Dateien **custom.config.json** und **custom.info.json**.

##### Zugänglichkeit

| Befehl                         | Rechtsklick-Menü                                                     | Befehlspalette |
| ------------------------------ | -------------------------------------------------------------------- | -------------- |
| Kameleoon - Deploy custom data | Rechtsklick auf einen bestimmten Ordner für benutzerdefinierte Daten | ✕              |

#### Synchronisationsbefehle

Das Speichern der synchronisierten Datei löst die Synchronisation aus. Es kann immer nur eine Entität gleichzeitig synchronisiert werden.

##### Kameleoon - Synchronize variation code to Chrome

Dieser Befehl synchronisiert sowohl js- als auch css-Dateien mit der Chrome-Erweiterung und injiziert den Code in die Webseite. Er akzeptiert auch TS- und SCSS-Dateien.

##### Zugänglichkeit

| Befehl                                           | Rechtsklick-Menü                                                              | Befehlspalette |
| ------------------------------------------------ | ----------------------------------------------------------------------------- | -------------- |
| Kameleoon - Synchronize variation code to Chrome | Rechtsklick auf eine bestimmte Variations-Skriptdatei (.css, .scss, .js, .ts) | ✕              |

##### Kameleoon - Synchronize common code to Chrome

Dieser Befehl synchronisiert sowohl die Dateien **common.js** als auch **common.css** mit der Chrome-Erweiterung und injiziert den Code in die Webseite. Er akzeptiert auch TS- und SCSS-Dateien.

##### Zugänglichkeit

| Befehl                                        | Rechtsklick-Menü                                                                         | Befehlspalette |
| --------------------------------------------- | ---------------------------------------------------------------------------------------- | -------------- |
| Kameleoon - Synchronize common code to Chrome | Rechtsklick auf eine bestimmte gemeinsame Experiment-Skriptdatei (.css, .scss, .js, .ts) | ✕              |

##### Kameleoon - Synchronize global code to Chrome

Dieser Befehl synchronisiert die Datei index.js mit der Chrome-Erweiterung und injiziert den Code in die Webseite.

##### Zugänglichkeit

| Befehl                                        | Rechtsklick-Menü                                                                | Befehlspalette |
| --------------------------------------------- | ------------------------------------------------------------------------------- | -------------- |
| Kameleoon - Synchronize global code to Chrome | Rechtsklick auf eine bestimmte globale Code-Skriptdatei (.css, .scss, .js, .ts) | ✕              |

##### Kameleoon - Remove synchronization

Dieser Befehl entfernt die Synchronisation.

##### Zugänglichkeit

| Befehl                             | Rechtsklick-Menü                                                                                                  | Befehlspalette                                                                                                                |
| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- |
| Kameleoon - Remove synchronization | Rechtsklick auf eine bestimmte Skriptdatei (.css, .scss, .js, .ts), die mit Synchronisation verwendet werden kann | Über die Befehlspalette können Sie auf einen speziellen Remove synchronization-Befehl für jeden Synchronisationstyp zugreifen |

## Häufig gestellte Fragen

Das Wort "Entität" bezieht sich auf die verschiedenen Objekte, mit denen die Erweiterung interagiert, wie z. B. Experimente, Personalisierungen, Projekte, Variationen, Segmente, benutzerdefinierte Daten oder Ziele.

Kameleoon verwendet keine Datei- und Ordner-Namenskonventionen mehr. Erstellen Sie Entitäten (Experimente, Variationen und andere) mit JSON-Konfigurationsdateien.

Diese Erweiterung verwendet eine Konvention, die auf Konfigurationsdateien basiert und als **dateibasierte Architektur** bezeichnet wird. Die dateibasierte Architektur eliminiert die in früheren Versionen verwendeten Datei- und Ordner-Namenskonventionen. Stattdessen verwendet sie mehrere JSON-Dateien, die Entitätsinformationen enthalten.

Es gibt zwei Arten von Dateien:

* **`[entity].info.json`** — Diese Datei enthält die ID und andere kontobezogene Informationen.
* **`[entity].config.json`** — Diese Datei enthält die Konfiguration der Entität und kann verwendet werden, um dieselbe Entität in einem anderen Konto neu zu erstellen.

### Überschreiben die Importbefehle die Dateien und Ordner?

Nein, die Importbefehle überschreiben die Dateien und Ordner nicht, aber ein Importbefehl kann die Dateien und Ordner erstellen, falls sie nicht existieren.

### Überschreiben die fetch-Befehle die Dateien und Ordner?

Ja, die fetch-Befehle überschreiben die Dateien und Ordner. In Zukunft wird Kameleoon Merge-Funktionen bereitstellen, um die verschiedenen Änderungen zwischen der Remote-Version und der lokalen zu verwalten.

### Generieren Importbefehle nach ihrer Ausführung ein neues `engine.js`-Skript (zuvor `kameleoon.js` genannt)?

Nein, [Importbefehle](https://docs.google.com/document/d/1ALR2xs7FXv55JmG3ytSFZsvUnHrdavldJ6oUG-iumkY/edit#heading=h.wcwvfrwnscwe) generieren nach der Ausführung kein neues `engine.js`-Skript.

### Generieren Erstellungsbefehle nach ihrer Ausführung ein neues `engine.js`-Skript?

Ja, [Erstellungsbefehle](https://docs.google.com/document/d/1ALR2xs7FXv55JmG3ytSFZsvUnHrdavldJ6oUG-iumkY/edit#heading=h.3ujr0l9zgbgd) generieren nach der Ausführung ein neues `engine.js`-Skript.

### Generieren Bereitstellungsbefehle nach ihrer Ausführung ein neues `engine.js`-Skript?

Ja, [Bereitstellungsbefehle](https://docs.google.com/document/d/1ALR2xs7FXv55JmG3ytSFZsvUnHrdavldJ6oUG-iumkY/edit#heading=h.5t82fjid356v) generieren nach der Ausführung ein neues `engine.js`-Skript.

### Wie führe ich ein Rollback durch und installiere eine bestimmte Erweiterungsversion?

Deinstallieren Sie die aktuelle Kameleoon-Erweiterung, falls Sie sie installiert haben. Stellen Sie sicher, dass Sie Ihr Visual Studio Code-Fenster neu laden, um die Änderungen zu übernehmen.

Gehen Sie zu [https://marketplace.visualstudio.com/items?itemName=Kameleoon.kameleoon](https://marketplace.visualstudio.com/items?itemName=Kameleoon.kameleoon)

Klicken Sie auf **Version history**.

[Version history](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/VS-Code-Extension-10.gif)

Laden Sie die Version herunter, die Sie installieren möchten. Sie sollten eine VSIX-Datei haben.

Importieren Sie die VSIX-Datei in VS Code.

1. Gehen Sie zur Registerkarte Extensions.
2. Klicken Sie auf die drei Punkte in der oberen rechten Ecke des Panels "Extensions".
3. Klicken Sie auf "*Install from VSIX…*"

### Wie migriere ich von V3 zu V4?

Um von V3 zu V4 zu migrieren, empfiehlt Kameleoon, Änderungen in die Produktion zu übertragen (optional), alle Dateien und Ordner zu löschen und eine neue Umgebung zu starten. Der Abschnitt [Erste Schritte](https://docs.google.com/document/d/1ALR2xs7FXv55JmG3ytSFZsvUnHrdavldJ6oUG-iumkY/edit#heading=h.ysyu20smapmp) erläutert die Schritte zum Einrichten einer neuen Umgebung.

### Wie deaktiviere ich die Minimize-Option in Visual Studio Code?

Sie können die Minimize- oder "Minify"-Option für Kameleoon in VS Code deaktivieren, indem Sie diese Schritte befolgen:

1. Öffnen Sie die Registerkarte Extensions in VS Code.

<Frame>
  ![Extension](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/vs-code-11.png)
</Frame>

2. Klicken Sie von **Kameleoon** in der Liste der installierten Erweiterungen auf **Settings**.

<Frame>
  ![Extension](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/vs-code-12.png)
</Frame>

3. Wählen Sie die Option mit der Bezeichnung **Enable JS minification for deploying and synchronization**.

<Frame>
  ![Extension](https://storage.googleapis.com/kameleoon-storage-documentation/developers/images/vs-code-13.png)
</Frame>
