

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# CodeCommit Ressourcen erstellen mit AWS CloudFormation
<a name="creating-resources-with-cloudformation"></a>

AWS CodeCommit ist integriert in AWS CloudFormation, ein Service, der Ihnen hilft, Ihre AWS Ressourcen zu modellieren und einzurichten, sodass Sie weniger Zeit mit der Erstellung und Verwaltung Ihrer Ressourcen und Infrastruktur verbringen müssen. Sie erstellen eine Vorlage, die alle benötigten AWS Ressourcen (z. B. Repositorys) beschreibt und diese Ressourcen für Sie CloudFormation bereitstellt und konfiguriert. 

Wenn Sie sie verwenden CloudFormation, können Sie Ihre Vorlage wiederverwenden, um Ihre CodeCommit Ressourcen konsistent und wiederholt einzurichten. Beschreiben Sie Ihre Ressourcen einmal und stellen Sie dann dieselben Ressourcen immer wieder in mehreren AWS-Konten Regionen bereit. 

## CodeCommit und CloudFormation Vorlagen
<a name="working-with-templates"></a>

Um Ressourcen für und zugehörige Dienste bereitzustellen CodeCommit und zu konfigurieren, müssen Sie sich mit [CloudFormation Vorlagen](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html) auskennen. Vorlagen sind formatierte Textdateien in JSON oder YAML. Diese Vorlagen beschreiben die Ressourcen, die Sie in Ihren CloudFormation Stacks bereitstellen möchten. Wenn Sie mit JSON oder YAML nicht vertraut sind, können Sie CloudFormation Designer verwenden, um Ihnen die ersten Schritte mit Vorlagen zu erleichtern. CloudFormation Weitere Informationen finden Sie unter [Was ist CloudFormation -Designer?](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/working-with-templates-cfn-designer.html) im *AWS CloudFormation -Benutzerhandbuch*.

CodeCommit unterstützt das Erstellen von Repositorys in CloudFormation Im Gegensatz zum Erstellen von Repositorys über die Konsole oder die Befehlszeile können Sie CloudFormation damit Repositorys erstellen und automatisch Code aus einer angegebenen .zip-Datei in einem Amazon S3 S3-Bucket in das neu erstellte Repository übertragen. Weitere Informationen, einschließlich Beispielen für JSON- und YAML-Vorlagen für Repositorys, finden Sie unter. [AWS::CodeCommit::Repository](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html)

Wenn Sie ein CodeCommit Repository mit erstellen CloudFormation, haben Sie die Möglichkeit, Code als Teil des Erstellungsprozesses in dieses Repository zu übertragen, sofern das Archiv weniger als 20 MB groß ist, indem Sie Eigenschaften in [AWS:CodeCommit: :Repository Code](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html) konfigurieren. Sie können den Amazon S3 S3-Bucket angeben, in dem der Code gespeichert ist, und optional die [BranchName Eigenschaft](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codecommit-repository-code.html) verwenden, um den Namen des Standard-Branches anzugeben, der beim ersten Commit dieses Codes erstellt wird. Diese Eigenschaften werden nur bei der ersten Repository-Erstellung verwendet und bei Stack-Updates ignoriert. Sie können diese Eigenschaften nicht verwenden, um zusätzliche Commits an ein Repository vorzunehmen oder den Namen des Standard-Branches nach dem ersten Commit zu ändern.

**Anmerkung**  
Am 19. Januar 2021 AWS wurde der Name des Standard-Branches CodeCommit von *master* in *main* geändert. Diese Namensänderung wirkt sich auf das Standardverhalten aus CodeCommit , wenn der erste Commit für Repositorys mithilfe der CodeCommit Konsole, der CodeCommit APIs AWS SDKs, und der AWS CLI erstellt wird. Repositorys, die mit CloudFormation oder AWS CDK mit einem ersten Code-Commit im Rahmen der Erstellung erstellt wurden, entsprechen ab dem 4. März 2021 dieser Änderung. Diese Änderung hat keine Auswirkungen auf bestehende Repositorys oder Branches. Kunden, die lokale Git-Clients verwenden, um ihre ersten Commits zu erstellen, haben einen Standard-Branch-Namen, der der Konfiguration dieser Git-Clients folgt. Weitere Informationen findest du unter [Mit Branches arbeiten](https://docs.aws.amazon.com/codecommit/latest/userguide/branches.html), [Einen Commit erstellen](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-create-commit.html) und [Branch-Einstellungen ändern](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-change-branch.html).

Sie können auch Vorlagen erstellen, mit denen verwandte Ressourcen erstellt werden, z. B. [Benachrichtigungsregeln](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codestarnotifications-notificationrule.html) für Repositorys, [AWS CodeBuild Build-Projekte](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codebuild-project.html), [AWS CodeDeploy Anwendungen](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codedeploy-application.html) und [AWS CodePipeline Pipelines](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codepipeline-pipeline.html).

## Vorlagenbeispiele
<a name="cloudformation-codecommit-example"></a>

In den folgenden Beispielen wird ein CodeCommit Repository mit dem Namen erstellt. {{MyDemoRepo}} Das neu erstellte Repository wird mit Code gefüllt, der in einem Amazon S3 S3-Bucket gespeichert ist {{MySourceCodeBucket}} und in einem Branch mit dem Namen platziert wird{{development}}, der der Standard-Branch für das Repository ist. 

**Anmerkung**  
Der Name des Amazon S3 S3-Buckets, der die ZIP-Datei mit dem Inhalt enthält, der in das neue Repository übertragen wird, kann mit einem ARN oder dem Namen des Buckets im Amazon Web Services Services-Konto angegeben werden. Der Amazon S3-Objektschlüssel entspricht der Definition im [Amazon S3 Developer Guide](https://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html#BasicsKeys).

 **JSON:**

```
{
    "MyRepo": {
        "Type": "AWS::CodeCommit::Repository",
        "Properties": {
            "RepositoryName": "{{MyDemoRepo}}",
            "RepositoryDescription": "{{This is a repository for my project with code from MySourceCodeBucket.}}",
            "Code": {
                "BranchName": "{{development}}",
                "S3": {
                    "Bucket": "{{MySourceCodeBucket}}",
                    "Key": "{{MyKey}}",
                    "ObjectVersion": "{{1}}"
                }
            }
        }
    }
}
```

**YAML**:

```
MyRepo:
  Type: AWS::CodeCommit::Repository
  Properties:
    RepositoryName: {{MyDemoRepo}}
    RepositoryDescription: {{This is a repository for my project with code from MySourceCodeBucket.}}
    Code:
      BranchName: {{development}}
      S3: 
        Bucket: {{MySourceCodeBucket}},
        Key: {{MyKey}},
        ObjectVersion: {{1}}
```

Weitere Beispiele finden Sie unter [AWS::CodeCommit::Repository](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-codecommit-repository.html).

## CloudFormation, CodeCommit, und die AWS Cloud Development Kit (AWS CDK)
<a name="cloudformation-codecommit-cdk"></a>

Repositorys, die bei ihrer Erstellung AWS CDK mithilfe der CloudFormation Use-Funktionalität erstellt wurden. Wenn Sie verstehen, wie CloudFormation Vorlagen mit CodeCommit Ressourcen funktionieren, können Sie Ihren AWS CDK Code erstellen und verwalten. Weitere Informationen zu finden Sie im AWS CDK[AWS Cloud Development Kit (AWS CDK) Entwicklerhandbuch](https://docs.aws.amazon.com/cdk/latest/guide/home.html) und in der [AWS CDK API-Referenz.](https://docs.aws.amazon.com//cdk/api/v2/docs/aws-cdk-lib.aws_codecommit-readme.html)

Das folgende AWS CDK Typescript-Beispiel erstellt ein CodeCommit Repository mit dem Namen. {{MyDemoRepo}} Das neu erstellte Repository wird mit Code gefüllt, der in einem Amazon S3 S3-Bucket gespeichert ist {{MySourceCodeBucket}} und in einem Branch mit dem Namen platziert wird{{development}}, der der Standard-Branch für das Repository ist. 

```
import * as cdk from '@aws-cdk/core';
import codecommit = require('@aws-cdk/aws-codecommit');
export class CdkCodecommitStack extends cdk.Stack {
  constructor(scope: cdk.Construct, id: string, props?: cdk.StackProps) {
    super(scope, id, props);
    // The code creates a CodeCommit repository with a default branch name development
      new codecommit.CfnRepository(this, 'MyRepoResource', {
            repositoryName: "MyDemoRepo",
            code: {
              "branchName": "development",
              "s3": {
                "bucket": "MySourceCodeBucket",
                "key": "MyKey"
              }
            },
        }
     );
  }
}
```

## Erfahren Sie mehr über CloudFormation
<a name="learn-more-cloudformation"></a>

Weitere Informationen CloudFormation dazu finden Sie in den folgenden Ressourcen:
+ [AWS CloudFormation](https://aws.amazon.com/cloudformation/)
+ [AWS CloudFormation Benutzerhandbuch](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)
+ [AWS CloudFormation Benutzerhandbuch für die Befehlszeilenschnittstelle](https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/what-is-cloudformation-cli.html)