{"meta":{"title":"Speichern von Informationen in Variablen","intro":"GitHub legt Standardvariablen für jede GitHub Actions-Workflowausführung fest. Sie können auch benutzerdefinierte Variablen für die Verwendung in einem einzelnen oder mehreren Workflows festlegen.","product":"GitHub Actions","breadcrumbs":[{"href":"/de/actions","title":"GitHub Actions"},{"href":"/de/actions/how-tos","title":"Anleitungen"},{"href":"/de/actions/how-tos/write-workflows","title":"Schreiben von Workflows"},{"href":"/de/actions/how-tos/write-workflows/choose-what-workflows-do","title":"Auswählen, was in Workflows passiert"},{"href":"/de/actions/how-tos/write-workflows/choose-what-workflows-do/use-variables","title":"Verwenden von Variablen"}],"documentType":"article"},"body":"# Speichern von Informationen in Variablen\n\nGitHub legt Standardvariablen für jede GitHub Actions-Workflowausführung fest. Sie können auch benutzerdefinierte Variablen für die Verwendung in einem einzelnen oder mehreren Workflows festlegen.\n\n## Definieren von Umgebungsvariablen für einen einzelnen Workflow\n\nUm eine benutzerdefinierte Umgebungsvariable für die Verwendung in einem einzelnen Workflow anzulegen, können Sie den `env`-Schlüssel in der Workflowdatei definieren. Der Geltungsbereich einer mit dieser Methode festgelegten benutzerdefinierten Variable ist auf das Element beschränkt, in dem sie definiert wird. Sie können Variablen definieren, die auf Folgendes beschränkt sind:\n\n* Den gesamten Workflow, indem Sie [`env`](/de/actions/using-workflows/workflow-syntax-for-github-actions#env) in der Workflowdatei auf der obersten Ebene verwenden\n* Der Inhalt eines Auftrags innerhalb eines Workflows unter Verwendung von [`jobs.<job_id>.env`](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idenv).\n* Einen bestimmten Schritt innerhalb eines Auftrags, indem Sie [`jobs.<job_id>.steps[*].env`](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsenv) verwenden\n\n```yaml copy\nname: Greeting on variable day\n\non:\n  workflow_dispatch\n\nenv:\n  DAY_OF_WEEK: Monday\n\njobs:\n  greeting_job:\n    runs-on: ubuntu-latest\n    env:\n      Greeting: Hello\n    steps:\n      - name: \"Say Hello Mona it's Monday\"\n        run: echo \"$Greeting $First_Name. Today is $DAY_OF_WEEK!\"\n        env:\n          First_Name: Mona\n```\n\nSie können auf `env`-Variablenwerte mithilfe von Runnerumgebungsvariablen oder mithilfe von Kontexten zugreifen. Das Beispiel oben zeigt drei benutzerdefinierte Variablen, die als Umgebungsvariablen für Läufer in einem `echo` Befehl verwendet werden: `$DAY_OF_WEEK`, `$Greeting` und `$First_Name`. Die Werte für diese Variablen werden auf Workflow-, Auftrags- und Schrittebene festgelegt, und ihr Geltungsbereich wird entsprechend beschränkt. Die Interpolation dieser Variablen erfolgt auf dem Runner.\n\nDie Befehle in den `run` Schritten eines Workflows oder einer referenzierten Aktion werden von der Shell verarbeitet, die Sie auf dem Runner verwenden. Die Anweisungen in den anderen Teilen eines Workflows werden von GitHub Actions verarbeitet und nicht an den Runner gesendet. Sie können entweder Umgebungsvariablen des Runners oder Kontexte in `run` Schritten verwenden, aber in den Teilen eines Workflows, die nicht an den Runner gesendet werden, müssen Sie Kontexte für den Zugriff auf Variablenwerte verwenden. Weitere Informationen findest du unter [Verwenden von Kontexten für das Zugreifen auf Variablenwerte](#using-contexts-to-access-variable-values).\n\nDa die Interpolation der Runnerumgebungsvariablen nach dem Senden eines Workflowauftrags an einen Runnercomputer durchgeführt wird, müssen Sie die richtige Syntax für die auf dem Runner verwendete Shell verwenden. In diesem Beispiel ist im Workflow `ubuntu-latest` angegeben. Auf Linux-Runnern wird standardmäßig die Bash-Shell verwendet. Daher müssen Sie in diesem Fall die Syntax `$NAME` verwenden. Standardmäßig verwenden Windows-Runner PowerShell, sodass Sie die Syntax `$env:NAME` verwenden würden. Weitere Informationen zu Shells findest du unter [Workflowsyntax für GitHub Actions](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell).\n\n## Definieren von Konfigurationsvariablen für mehrere Workflows\n\nSie können Konfigurationsvariablen für mehrere Workflows erstellen und diese entweder auf [Organisations-](#creating-configuration-variables-for-an-organization), [Repository-](#creating-configuration-variables-for-a-repository) oder [Umgebungsebene](#creating-configuration-variables-for-an-environment) definieren.\n\nSie können beispielsweise Konfigurationsvariablen verwenden, um Standardwerte für Parameter festzulegen, die an Buildtools auf Organisationsebene übergeben werden, und Repositorybesitzern dann erlauben, diese Parameter von Fall zu Fall zu überschreiben.\n\nWenn Sie Konfigurationsvariablen definieren, sind sie automatisch im `vars`-Kontext verfügbar. Weitere Informationen findest du unter [Verwenden des `vars`-Kontexts für das Zugreifen auf Werte von Konfigurationsvariablen](#using-the-vars-context-to-access-configuration-variable-values).\n\n### Erstellen von Konfigurationsvariablen für ein Repository\n\nUm Geheimnisse oder Variablen auf GitHub für ein Organisations-Repository zu erstellen, benötigen Sie `write` Zugriff. Für ein persönliches Konto-Repository müssen Sie Repository-Kollaborator sein.\n\n1. Navigieren Sie auf GitHub zur Hauptseite des Repositorys.\n2. Klicke unter dem Repositorynamen auf **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Settings**. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** die Option **Einstellungen** aus.\n\n   ![Screenshot eines Repositoryheaders mit den Registerkarten. Die Registerkarte „Einstellungen“ ist dunkelorange umrandet.](/assets/images/help/repository/repo-actions-settings.png)\n3. Wähle im Abschnitt „Security“ der Randleiste **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-key-asterisk\" aria-label=\"key-asterisk\" role=\"img\"><path d=\"M0 2.75A2.75 2.75 0 0 1 2.75 0h10.5A2.75 2.75 0 0 1 16 2.75v10.5A2.75 2.75 0 0 1 13.25 16H2.75A2.75 2.75 0 0 1 0 13.25ZM2.75 1.5c-.69 0-1.25.56-1.25 1.25v10.5c0 .69.56 1.25 1.25 1.25h10.5c.69 0 1.25-.56 1.25-1.25V2.75c0-.69-.56-1.25-1.25-1.25Z\"></path><path d=\"M8 4a.75.75 0 0 1 .75.75V6.7l1.69-.975a.75.75 0 0 1 .75 1.3L9.5 8l1.69.976a.75.75 0 0 1-.75 1.298L8.75 9.3v1.951a.75.75 0 0 1-1.5 0V9.299l-1.69.976a.75.75 0 0 1-.75-1.3L6.5 8l-1.69-.975a.75.75 0 0 1 .75-1.3l1.69.976V4.75A.75.75 0 0 1 8 4Z\"></path></svg> Secrets and variables**, und klicke anschließend auf **Actions**.\n4. Klicke auf die Registerkarte **Variablen**.\n   ![Screenshot der Seite „Aktionsgeheimnisse und -variablen“. Die Registerkarte „Variablen“ ist mit einer dunklen orangen Linie umrandet.](/assets/images/help/repository/actions-variables-tab.png)\n5. Klicke auf **Neue Repository-Variable**.\n6. Gib im Feld **Name** einen Namen für deine Variable ein.\n7. Gib im Feld **Wert** den Wert für deine Variable ein.\n8. Klicke auf **Variable hinzufügen**.\n\n### Erstellen von Konfigurationsvariablen für eine Umgebung\n\nUm Geheimnisse oder Variablen für eine Umgebung in einem Repository eines persönlichen Kontos zu erstellen, müssen Sie Besitzer des Repositorys sein. Für das Erstellen von Geheimnissen oder Variablen für eine Umgebung in einem Organisationsrepository benötigen Sie `admin`-Zugriff. Weitere Informationen zu Umgebungen findest du unter [Verwalten von Umgebungen für die Bereitstellung](/de/actions/deployment/targeting-different-environments/managing-environments-for-deployment).\n\n1. Navigieren Sie auf GitHub zur Hauptseite des Repositorys.\n2. Klicke unter dem Repositorynamen auf **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Settings**. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** die Option **Einstellungen** aus.\n\n   ![Screenshot eines Repositoryheaders mit den Registerkarten. Die Registerkarte „Einstellungen“ ist dunkelorange umrandet.](/assets/images/help/repository/repo-actions-settings.png)\n3. Klicke auf der linken Randleiste auf **Umgebungen**.\n4. Klicken Sie auf die Umgebung, der Sie eine Variable hinzufügen möchten.\n5. Klicke unter **Umgebungsvariablen** auf **Variable hinzufügen**.\n6. Gib im Feld **Name** einen Namen für deine Variable ein.\n7. Gib im Feld **Wert** den Wert für deine Variable ein.\n8. Klicke auf **Variable hinzufügen**.\n\n### Erstellen von Konfigurationsvariablen für eine Organisation\n\n> \\[!NOTE]\n> Auf Geheimnisse und Variablen auf Organisationsebene können private Repositorys für GitHub Free nicht zugreifen. Weitere Informationen zum Upgrade des GitHub-Abonnements sind unter [Heraufstufen deines Kontoplans](/de/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription) zu finden.\n\nBeim Erstellen eines Geheimnisses oder einer Variable in einer Organisation kannst du mit einer Richtlinie den Zugriff jeweils nach Repository einschränken. Du kannst beispielsweise allen Repositorys Zugriff gewähren oder nur private Repositorys oder eine angegebene Liste von Repositorys zulassen.\n\nOrganisationsbesitzer\\*innen können Geheimnisse oder Variablen auf Organisationsebene erstellen.\n\n1. Navigieren Sie auf GitHub zur Hauptseite der Organisation.\n\n2. Klicke unter dem Organisationsnamen auf **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-gear\" aria-label=\"gear\" role=\"img\"><path d=\"M8 0a8.2 8.2 0 0 1 .701.031C9.444.095 9.99.645 10.16 1.29l.288 1.107c.018.066.079.158.212.224.231.114.454.243.668.386.123.082.233.09.299.071l1.103-.303c.644-.176 1.392.021 1.82.63.27.385.506.792.704 1.218.315.675.111 1.422-.364 1.891l-.814.806c-.049.048-.098.147-.088.294.016.257.016.515 0 .772-.01.147.038.246.088.294l.814.806c.475.469.679 1.216.364 1.891a7.977 7.977 0 0 1-.704 1.217c-.428.61-1.176.807-1.82.63l-1.102-.302c-.067-.019-.177-.011-.3.071a5.909 5.909 0 0 1-.668.386c-.133.066-.194.158-.211.224l-.29 1.106c-.168.646-.715 1.196-1.458 1.26a8.006 8.006 0 0 1-1.402 0c-.743-.064-1.289-.614-1.458-1.26l-.289-1.106c-.018-.066-.079-.158-.212-.224a5.738 5.738 0 0 1-.668-.386c-.123-.082-.233-.09-.299-.071l-1.103.303c-.644.176-1.392-.021-1.82-.63a8.12 8.12 0 0 1-.704-1.218c-.315-.675-.111-1.422.363-1.891l.815-.806c.05-.048.098-.147.088-.294a6.214 6.214 0 0 1 0-.772c.01-.147-.038-.246-.088-.294l-.815-.806C.635 6.045.431 5.298.746 4.623a7.92 7.92 0 0 1 .704-1.217c.428-.61 1.176-.807 1.82-.63l1.102.302c.067.019.177.011.3-.071.214-.143.437-.272.668-.386.133-.066.194-.158.211-.224l.29-1.106C6.009.645 6.556.095 7.299.03 7.53.01 7.764 0 8 0Zm-.571 1.525c-.036.003-.108.036-.137.146l-.289 1.105c-.147.561-.549.967-.998 1.189-.173.086-.34.183-.5.29-.417.278-.97.423-1.529.27l-1.103-.303c-.109-.03-.175.016-.195.045-.22.312-.412.644-.573.99-.014.031-.021.11.059.19l.815.806c.411.406.562.957.53 1.456a4.709 4.709 0 0 0 0 .582c.032.499-.119 1.05-.53 1.456l-.815.806c-.081.08-.073.159-.059.19.162.346.353.677.573.989.02.03.085.076.195.046l1.102-.303c.56-.153 1.113-.008 1.53.27.161.107.328.204.501.29.447.222.85.629.997 1.189l.289 1.105c.029.109.101.143.137.146a6.6 6.6 0 0 0 1.142 0c.036-.003.108-.036.137-.146l.289-1.105c.147-.561.549-.967.998-1.189.173-.086.34-.183.5-.29.417-.278.97-.423 1.529-.27l1.103.303c.109.029.175-.016.195-.045.22-.313.411-.644.573-.99.014-.031.021-.11-.059-.19l-.815-.806c-.411-.406-.562-.957-.53-1.456a4.709 4.709 0 0 0 0-.582c-.032-.499.119-1.05.53-1.456l.815-.806c.081-.08.073-.159.059-.19a6.464 6.464 0 0 0-.573-.989c-.02-.03-.085-.076-.195-.046l-1.102.303c-.56.153-1.113.008-1.53-.27a4.44 4.44 0 0 0-.501-.29c-.447-.222-.85-.629-.997-1.189l-.289-1.105c-.029-.11-.101-.143-.137-.146a6.6 6.6 0 0 0-1.142 0ZM11 8a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM9.5 8a1.5 1.5 0 1 0-3.001.001A1.5 1.5 0 0 0 9.5 8Z\"></path></svg> Settings**. Wenn die Registerkarte „Einstellungen“ nicht angezeigt wird, wähle im Dropdownmenü **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"More\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>** die Option **Einstellungen** aus.\n\n   ![Screenshot der Registerkarten im Profil einer Organisation. Die Registerkarte „Einstellungen“ ist dunkelorange umrandet.](/assets/images/help/discussions/org-settings-global-nav-update.png)\n\n3. Wähle im Abschnitt „Security“ der Randleiste **<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-key-asterisk\" aria-label=\"key-asterisk\" role=\"img\"><path d=\"M0 2.75A2.75 2.75 0 0 1 2.75 0h10.5A2.75 2.75 0 0 1 16 2.75v10.5A2.75 2.75 0 0 1 13.25 16H2.75A2.75 2.75 0 0 1 0 13.25ZM2.75 1.5c-.69 0-1.25.56-1.25 1.25v10.5c0 .69.56 1.25 1.25 1.25h10.5c.69 0 1.25-.56 1.25-1.25V2.75c0-.69-.56-1.25-1.25-1.25Z\"></path><path d=\"M8 4a.75.75 0 0 1 .75.75V6.7l1.69-.975a.75.75 0 0 1 .75 1.3L9.5 8l1.69.976a.75.75 0 0 1-.75 1.298L8.75 9.3v1.951a.75.75 0 0 1-1.5 0V9.299l-1.69.976a.75.75 0 0 1-.75-1.3L6.5 8l-1.69-.975a.75.75 0 0 1 .75-1.3l1.69.976V4.75A.75.75 0 0 1 8 4Z\"></path></svg> Secrets and variables**, und klicke anschließend auf **Actions**.\n\n4. Klicke auf die Registerkarte **Variablen**.\n\n   ![Screenshot: Seite „Geheimnisse und Variablen für Aktionen“. Die Registerkarte „Variablen“ ist dunkel-orange umrandet.](/assets/images/help/repository/actions-variables-tab.png)\n\n5. Klicke auf **Neue Organisationsvariable**.\n\n6. Gib im Feld **Name** einen Namen für deine Variable ein.\n\n7. Gib im Feld **Wert** den Wert für deine Variable ein.\n\n8. Wähle in der Dropdownliste **Repositoryzugriff** eine Zugriffsrichtlinie aus.\n\n9. Klicke auf **Variable hinzufügen**.\n\n## Verwenden von Kontexten für den Zugriff auf die Werte von Variablen\n\nKontexte sind eine Möglichkeit, auf Informationen zu Workflowausführungen, Variablen, Runnerumgebungen, Aufträge und Schritten zuzugreifen. Weitere Informationen finden Sie unter [Kontextreferenz](/de/actions/learn-github-actions/contexts). Es gibt noch viele weitere Kontexte, die Sie für verschiedene Zwecke in deinen Workflows verwenden können. Ausführliche Informationen zum Verwenden von bestimmten Kontexten innerhalb eines Workflows findest du unter [Kontextreferenz](/de/actions/learn-github-actions/contexts#context-availability).\n\nSie können die Werte der Umgebungsvariablen über den `env`-Kontext und die Werte der Konfigurationsvariablen über den `vars`-Kontext aufrufen.\n\n### Verwenden des `env`-Kontexts für den Zugriff auf die Werte von Umgebungsvariablen\n\nNeben Runner-Umgebungsvariablen können Sie mit GitHub Actions auch mithilfe von Kontexten `env`-Schlüsselwerte festlegen und lesen. Umgebungsvariablen und Kontexte sind für verschiedene Stellen im Workflow vorgesehen.\n\nDie `run` Schritte in einem Workflow oder in einer referenzierten Aktion werden von einem Runner verarbeitet. Daher können Sie hier Umgebungsvariablen für den Runner verwenden, wobei Sie die entsprechende Syntax für die auf dem Runner verwendete Shell verwenden - zum Beispiel `$NAME` für die Bash-Shell auf einem Linux-Runner oder `$env:NAME` für PowerShell auf einem Windows-Runner. In den meisten Fällen können Sie auch Kontexte mit der Syntax `${{ CONTEXT.PROPERTY }}` verwenden, um auf denselben Wert zuzugreifen. Der Unterschied besteht darin, dass der Kontext interpoliert und durch eine Zeichenfolge ersetzt wird, bevor der Auftrag an einen Runner gesendet wird.\n\nSie können jedoch keine Runner-Umgebungsvariablen in Teilen eines Workflows verwenden, die von GitHub Actions verarbeitet und nicht an den Runner gesendet werden. Stattdessen kann man Kontexte verwenden. Eine `if`-Bedingung, mit der entschieden wird, ob ein Auftrag oder Schritt an den Runner gesendet wird, wird beispielsweise immer von GitHub Actions verarbeitet. Sie müssen daher einen Kontext in einer `if` bedingten Anweisung verwenden, um auf den Wert einer Variablen zuzugreifen.\n\n```yaml copy\nname: Conditional env variable\n\non: workflow_dispatch\n\nenv:\n  DAY_OF_WEEK: Monday\n\njobs:\n  greeting_job:\n    runs-on: ubuntu-latest\n    env:\n      Greeting: Hello\n    steps:\n      - name: \"Say Hello Mona it's Monday\"\n        if: ${{ env.DAY_OF_WEEK == 'Monday' }}\n        run: echo \"$Greeting $First_Name. Today is $DAY_OF_WEEK!\"\n        env:\n          First_Name: Mona\n```\n\nIn dieser abgewandelten Version des vorherigen Beispiels wurde eine `if`-Bedingung ergänzt. Der Workflowschritt wird jetzt nur ausgeführt, wenn `DAY_OF_WEEK` auf „Monday“ festgelegt ist. Auf diesen Wert wird über die bedingte Anweisung `if` unter Verwendung des [`env`-Kontexts](/de/actions/learn-github-actions/contexts#env-context) zugegriffen. Der `env`-Kontext ist für die Variablen, auf die innerhalb des `run`-Befehls verwiesen wird nicht erforderlich. Sie werden als Runner-Umgebungsvariablen referenziert und interpoliert, nachdem der Auftrag vom Runner empfangen wurde. Wir könnten diese Variablen jedoch interpolieren, bevor wir den Auftrag an den Runner senden, indem wir Kontexte verwenden. Das Ergebnis wäre das gleiche.\n\n```yaml\nrun: echo \"${{ env.Greeting }} ${{ env.First_Name }}. Today is ${{ env.DAY_OF_WEEK }}!\"\n```\n\n> \\[!NOTE]\n> Kontexte werden in der Regel mit einem Dollarzeichen und geschweiften Klammern gekennzeichnet, z. B. `${{ context.property }}`. In einer `if`-Bedingung sind `${{` und `}}` optional. Wenn Sie diese Zeichen verwenden, müssen sie jedoch die gesamte Vergleichsanweisung umschließen, wie oben zu sehen.\n\n> \\[!WARNING]\n> Bei der Erstellung von Workflows und Aktionen sollten Sie immer bedenken, ob Ihr Code nicht vertrauenswürdige Eingaben von möglichen Eindringlingen ausführen könnte. Bestimmte Kontexte sollten als nicht vertrauenswürdige Eingaben behandelt werden, da ein Angreifer seine eigenen schädlichen Inhalte einfügen könnte. Weitere Informationen finden Sie unter [Referenz zur sicheren Verwendung](/de/actions/security-guides/security-hardening-for-github-actions#understanding-the-risk-of-script-injections).\n\n### Verwenden des Kontexts `vars` für den Zugriff auf Konfigurationsvariablenwerte\n\nAuf Konfigurationsvariablen kann im gesamten Workflow mithilfe des Kontexts `vars` zugegriffen werden. Weitere Informationen finden Sie unter [Kontextreferenz](/de/actions/learn-github-actions/contexts#vars-context).\n\nWenn keine Konfigurationsvariable festgelegt wurde, ist der Rückgabewert eines Kontexts, der auf die Variable verweist, eine leere Zeichenfolge.\n\nDas folgende Beispiel zeigt die Verwendung von Konfigurationsvariablen mit dem Kontext `vars` in einem Workflow. Jede der folgenden Konfigurationsvariablen wurde auf Repository-, Organisations- oder Umgebungsebene definiert.\n\n```yaml copy\non:\n  workflow_dispatch:\nenv:\n  # Setting an environment variable with the value of a configuration variable\n  env_var: ${{ vars.ENV_CONTEXT_VAR }}\n\njobs:\n  display-variables:\n    name: ${{ vars.JOB_NAME }}\n    # You can use configuration variables with the `vars` context for dynamic jobs\n    if: ${{ vars.USE_VARIABLES == 'true' }}\n    runs-on: ${{ vars.RUNNER }}\n    environment: ${{ vars.ENVIRONMENT_STAGE }}\n    steps:\n    - name: Use variables\n      run: |\n        echo \"repository variable : $REPOSITORY_VAR\"\n        echo \"organization variable : $ORGANIZATION_VAR\"\n        echo \"overridden variable : $OVERRIDE_VAR\"\n        echo \"variable from shell environment : $env_var\"\n      env:\n        REPOSITORY_VAR: ${{ vars.REPOSITORY_VAR }}\n        ORGANIZATION_VAR: ${{ vars.ORGANIZATION_VAR }}\n        OVERRIDE_VAR: ${{ vars.OVERRIDE_VAR }}\n        \n    - name: ${{ vars.HELLO_WORLD_STEP }}\n      if: ${{ vars.HELLO_WORLD_ENABLED == 'true' }}\n      uses: actions/hello-world-javascript-action@main\n      with:\n        who-to-greet: ${{ vars.GREET_NAME }}\n```\n\n## Erkennen des Betriebssystems\n\nMithilfe der Standardumgebungsvariable `RUNNER_OS` und der entsprechenden Kontexteigenschaft <span style=\"white-space: nowrap;\">`${{ runner.os }}`</span> können Sie eine einzelne Workflowdatei erstellen, die für verschiedene Betriebssysteme verwendet werden kann. Beispielsweise könnte der folgende Workflow erfolgreich ausgeführt werden, wenn Sie das Betriebssystem von `macos-latest` in `windows-latest` ändern, ohne dass die Syntax der Umgebungsvariablen angepasst werden muss, die je nachdem, welche Shell auf dem Runner verwendet wird, unterschiedlich ist.\n\n```yaml copy\non: workflow_dispatch\n\njobs:\n  if-Windows-else:\n    runs-on: macos-latest\n    steps:\n      - name: condition 1\n        if: runner.os == 'Windows'\n        run: echo \"The operating system on the runner is $env:RUNNER_OS.\"\n      - name: condition 2\n        if: runner.os != 'Windows'\n        run: echo \"The operating system on the runner is not Windows, it's $RUNNER_OS.\"\n```\n\nIn diesem Beispiel wird mit den beiden `if`-Anweisungen die Eigenschaft `os` des Kontexts `runner` überprüft, um das Betriebssystem des Runners zu ermitteln. Die `if`-Bedingungen werden von GitHub Actions verarbeitet, und nur Schritte, in denen das Ergebnis der Überprüfung `true` lautet, werden an den Runner gesendet. Hier ist immer das Ergebnis einer Überprüfung `true` und das der anderen `false`, sodass nur einer dieser Schritte an den Runner gesendet wird. Sobald der Auftrag an den Runner gesendet wird, wird der Schritt ausgeführt, und die Umgebungsvariable im `echo`-Befehl wird mit der richtigen Syntax interpoliert (`$env:NAME` für PowerShell unter Windows und `$NAME` für Bash und sh unter Linux bzw. macOS). In diesem Beispiel bedeutet die Anweisung `runs-on: macos-latest`, dass der zweite Schritt ausgeführt wird.\n\n## Übergeben von Werten zwischen Schritten und Aufträgen in einem Workflow\n\nWenn ein Wert in einem Schritt eines Auftrags generiert wird, können Sie diesen in darauffolgenden Schritten desselben Auftrags verwenden, indem Sie den Wert einer bereits vorhandenen oder neuen Umgebungsvariable zuweisen und diese dann in die `GITHUB_ENV`-Umgebungsdatei schreibsen. Die Umgebungsdatei kann direkt von einer Aktion oder über einen Shellbefehl in der Workflowdatei mit dem Schlüsselwort `run` verwendet werden. Weitere Informationen finden Sie unter [Workflow commands for GitHub Actions (Workflowbefehle für GitHub Actions)](/de/actions/using-workflows/workflow-commands-for-github-actions#setting-an-environment-variable).\n\nWenn Sie einen Wert von einem Schritt in einem Auftrag in einem bestimmten Workflow an einen Schritt in einem anderen Auftrag in diesem Workflow übergeben möchten, können sie den Wert als Auftragsausgabe definieren. Dann können Sie in einem Schritt in einem anderen Auftrag auf diese Auftragsausgabe verweisen. Weitere Informationen finden Sie unter [Workflowsyntax für GitHub Actions](/de/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idoutputs).\n\n## Nächste Schritte\n\nReferenzinformationen findest du unter [Referenz für Variablen](/de/actions/reference/variables-reference)."}