

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 AWS CodeCommit 存储库中的文件
<a name="files"></a>

在 CodeCommit 中，文件是一种受版本控制的自包含式信息片段，可向您和其他用户提供存储文件的存储库和分支。您可以使用目录结构整理您的存储库文件，就如同在您的计算机上一样。与您的计算机不同，CodeCommit 会自动跟踪对文件所做的每个更改。您可以比较文件的版本，并将文件的不同版本存储在不同的存储库分支中。

要在存储库中添加或编辑文件，您可以使用 Git 客户端。您也可以使用 CodeCommit 控制台、AWS CLI 或 CodeCommit API。

![\[在 CodeCommit 控制台中创建文件的视图\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-create-file.png)


有关使用 CodeCommit 中的存储库的其他方面的信息，请参阅 [使用存储库](repositories.md)、[使用拉取请求](pull-requests.md)、[使用分支](branches.md)、[使用提交](commits.md) 和 [使用用户首选项](user-preferences.md)。

**Topics**
+ [浏览 AWS CodeCommit 存储库中的文件](how-to-browse.md)
+ [在 AWS CodeCommit 存储库中创建或添加文件](how-to-create-file.md)
+ [编辑 AWS CodeCommit 存储库中文件的内容](how-to-edit-file.md)

# 浏览 AWS CodeCommit 存储库中的文件
<a name="how-to-browse"></a>

连接到 CodeCommit 存储库后，您可以将其克隆到本地存储库或使用 CodeCommit控制台浏览其内容。本主题介绍如何使用 CodeCommit 控制台浏览 CodeCommit 存储库的内容。

**注意**  
对于活跃 CodeCommit 用户，通过 CodeCommit 控制台浏览代码不收取任何费用。有关何时可能产生费用的信息，请参阅[定价](https://aws.amazon.com/codecommit/pricing/)。

![\[CodeCommit 控制台中文件内容的视图\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-code-browse-file.png)


## 浏览存储 CodeCommit 库
<a name="how-to-browse-console"></a>

您可以使用 CodeCommit 控制台查看存储库中包含的文件，也可以快速读取文件的内容。

**浏览存储库的内容**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在**存储库**页面上，从存储库列表中选择要浏览的存储库。

1.  在**代码**视图中，浏览存储库的默认分支的内容。

   要将视图更改到不同的分支或标签，请选择视图选择器按钮。从下拉列表中选择分支或标签名称，或者在筛选器框中输入分支或标签名称，然后从列表中选择该名称。

1. 请执行以下操作之一：
   + 要查看某个目录的内容，请从列表中选择该目录。您可以从导航列表中选择任何目录以返回到该目录的视图。也可以使用目录列表顶部的向上箭头。
   + 要查看某个文件的内容，请从列表中选择该文件。如果文件超出提交对象限制，则无法在控制台中显示，只能在本地存储库中查看。有关更多信息，请参阅 [配额](limits.md)。要退出文件视图，请从代码导航栏选择要查看的目录。
**注意**  
 并非所有的二进制文件都可以在控制台中查看。如果您选择某个可能支持查看的二进制文件，将显示一条警告消息，要求您确认要显示其内容。要查看该文件，请选择 **Show file contents**。如果您不想查看该文件，请从代码导航栏选择要查看的目录。  
如果您选择 markdown 文件 (.md)，请使用 **Rendered Markdown** 和 **Markdown Source** 按钮在呈现和语法视图间切换。有关更多信息，请参阅[在控制台中使用 Markdown](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/aws-markdown.html)。

# 在 AWS CodeCommit 存储库中创建或添加文件
<a name="how-to-create-file"></a>

您可以使用 CodeCommit 控制台、AWS CLI 或 Git 客户端将文件添加到存储库。可以从您的本地计算机将文件上传到存储库，或者可以使用控制台中的代码编辑器创建文件。编辑器是一种快速简便的方法，可将单个文件 (例如 readme.md 文件) 添加到存储库中的分支。

![\[在 CodeCommit 控制台中上传文件的视图\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-commit-first-file.png)


**Topics**
+ [创建或上传文件（控制台）](#how-to-create-file-console)
+ [添加文件 (AWS CLI)](#how-to-create-file-cli)
+ [添加文件 (Git)](#how-to-create-file-git)

## 创建或上传文件（控制台）
<a name="how-to-create-file-console"></a>

您可以使用 CodeCommit 控制台创建文件，并将其添加到 CodeCommit 存储库中的分支。在创建文件过程中，可以提供您的用户名和电子邮件地址。您还可以添加提交消息，以便其他用户了解谁添加了文件以及原因。您还可以直接从您的本地计算机将文件上传到存储库中的分支。

**向存储库添加文件**

1. 打开 CodeCommit 控制台：[https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home)。

1. 在**存储库**中，选择要将文件添加到其中的存储库。

1. 在**代码**视图中，选择要将文件添加到的分支。默认情况下，在您打开**代码**视图时，将显示默认分支的内容。

   要将视图更改到不同的分支，请选择视图选择器按钮。从下拉列表中选择分支名称，或者在筛选器框中输入分支名称，然后从列表中选择该名称。

1. 选择**添加文件**，然后选择下列选项之一：
   +  要使用代码编辑器创建一个文件的内容并将该文件添加到存储库，请选择**创建文件**。
   + 要将文件从本地计算机上传到存储库，请选择**上传文件**。

1. 向其他用户提供有关谁将此文件添加到存储库以及添加原因的信息。
   + 在**作者姓名**中，输入您的姓名。此姓名同时用作提交信息中的作者姓名和提交者姓名。CodeCommit 默认使用您的 IAM 用户名作为作者姓名，或者从您的控制台登录名派生。
   + 在**电子邮件地址**中，输入一个电子邮件地址，以便其他存储库用户可以就此更改与您联系。
   + 在**提交消息**中，输入简要描述。这是可选的，但强烈建议您这样做。否则，将使用默认的提交消息。

1. 请执行以下操作之一：
   + 如果正在上传文件，请从您的本地计算机选择文件。
   + 如果正在创建文件，请输入您要在代码编辑器中添加的内容，并提供文件的名称。

1. 选择**提交更改**。

## 添加文件 (AWS CLI)
<a name="how-to-create-file-cli"></a>

您可以使用 AWS CLI 和 **put-file** 命令在 CodeCommit 存储库中添加文件。您还可以使用 **put-file** 命令为该文件添加目录或路径结构。

**注意**  
要使用 AWS CLI 命令操作 CodeCommit，请安装 AWS CLI。有关更多信息，请参阅 [命令行参考](cmd-ref.md)。

**向存储库添加文件**

1. 在本地计算机上，创建要添加到 CodeCommit 存储库中的文件。

1. 在终端或命令行中，运行 **put-file** 命令，并指定：
   + 您要将文件添加到的存储库。
   + 您要将文件添加到的分支。
   + 该分支的最近提交的完整提交 ID，也称为最前端提交或 HEAD 提交。
   + 文件的本地位置。用于此位置的语法取决于您的本地操作系统。
   + 您要添加的文件的名称，包括更新的文件在存储库中的存储路径 (如果有)。
   + 您希望与此文件关联的用户名和电子邮件。
   + 一条提交消息，说明您为什么添加此文件。

   用户名、电子邮件地址和提交消息是可选的，但可帮助其他用户知道谁执行的更改以及原因。如果您没有提供用户名，CodeCommit 默认使用您的 IAM 用户名或控制台登录名的派生名称作为作者名。

   例如，要将 *ExampleSolution.py* 文件添加到 *MyDemoRepo* 存储库中的 *feature-randomizationfeature* 分支，并且其最新提交的 ID 为 *4c925148EXAMPLE*，请执行以下操作：

   ```
   aws codecommit put-file --repository-name MyDemoRepo --branch-name feature-randomizationfeature --file-content file://MyDirectory/ExampleSolution.py --file-path /solutions/ExampleSolution.py --parent-commit-id 4c925148EXAMPLE --name "María García" --email "maría_garcía@example.com" --commit-message "I added a third randomization routine."
   ```
**注意**  
当您添加二进制文件时，请确保使用 `fileb://` 指定文件的本地位置。

   如果成功，该命令返回类似以下内容的输出：

   ```
   {
      "blobId": "2eb4af3bEXAMPLE",
      "commitId": "317f8570EXAMPLE",
      "treeId": "347a3408EXAMPLE"
   }
   ```

## 添加文件 (Git)
<a name="how-to-create-file-git"></a>

您可以在本地存储库中添加文件，并将您的更改推送到 CodeCommit 存储库。有关更多信息，请参阅 [Git 入门和 AWS CodeCommit](getting-started.md)。

# 编辑 AWS CodeCommit 存储库中文件的内容
<a name="how-to-edit-file"></a>

您可以使用 CodeCommit 控制台 AWS CLI、或 Git 客户端来编辑 CodeCommit 仓库中文件的内容。

![\[在 CodeCommit 控制台中编辑文件的视图\]](http://docs.aws.amazon.com/zh_cn/codecommit/latest/userguide/images/codecommit-edit-file.png)


**Topics**
+ [编辑文件（控制台）](#how-to-edit-file-console)
+ [编辑或删除文件 (AWS CLI)](#how-to-edit-file-cli)
+ [编辑文件 (Git)](#how-to-edit-file-git)

## 编辑文件（控制台）
<a name="how-to-edit-file-console"></a>

您可以使用 CodeCommit 控制台编辑已添加到 CodeCommit存储库中分支的文件。在编辑文件过程中，可以提供您的用户名和电子邮件地址。您还可以添加提交消息，以便其他用户了解谁执行了更改以及原因。

**编辑存储库中的文件**

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.aws.amazon.com/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 在**存储库**中，选择要编辑其中的文件的存储库。

1. 在**代码**视图中，选择要编辑文件的分支。默认情况下，在您打开**代码**视图时，将显示默认分支的内容。

   要将视图更改到不同的分支，请选择视图选择器按钮。从下拉列表中选择分支名称，或者在筛选器框中输入分支名称，然后从列表中选择该名称。

1. 导航分支内容并选择要编辑的文件。在文件视图中，选择**编辑**。
**注意**  
如果您选择二进制文件，将显示一条警告消息，要求您确认要显示其内容。不应使用 CodeCommit 控制台编辑二进制文件。

1. 编辑该文件，并向其他用户提供有关谁执行了此更改以及原因的信息。
   + 在**作者姓名**中，输入您的姓名。在提交信息中，此名称既用作作者姓名，也用作提交者姓名。 CodeCommit 默认使用您的 IAM 用户名或控制台登录的派生形式作为作者姓名。
   + 在**电子邮件地址**中，输入一个电子邮件地址，以便其他存储库用户可以就此更改与您联系。
   + 在**提交消息**中，输入您的更改的简要描述。

1. 选择 **Commit changes (提交更改)** 以保存对文件所做的更改并将更改提交到存储库。

## 编辑或删除文件 (AWS CLI)
<a name="how-to-edit-file-cli"></a>

您可以使用 AWS CLI 和**put-file**命令对 CodeCommit 存储库中的文件进行更改。如果您希望将更改的文件存储在一个不同于原始位置的位置，还可以使用 **put-file** 命令为更改的文件添加目录或路径结构。如果您要完全删除文件，您可以使用 **delete-file** 命令。

**注意**  
要将 AWS CLI 命令与一起使用 CodeCommit，请安装 AWS CLI。有关更多信息，请参阅 [命令行参考](cmd-ref.md)。

**编辑存储库中的文件**

1. 使用文件的本地副本，执行您要添加到 CodeCommit 存储库的更改。

1. 在终端或命令行中，运行 **put-file** 命令，并指定：
   + 您要将编辑后的文件添加到的存储库。
   + 您要将编辑后的文件添加到的分支。
   + 该分支的最近提交的完整提交 ID，也称为最前端提交或 HEAD 提交。
   + 文件的本地位置。
   + 您要添加的更新的文件的名称，包括更新的文件在存储库中的存储路径 (如果有)。
   + 您希望与此文件更改关联的用户名和电子邮件。
   + 一条提交消息，说明您所做的更改。

   用户名、电子邮件地址和提交消息是可选的，但可帮助其他用户知道谁执行的更改以及原因。如果您不提供用户名，则 CodeCommit 默认为使用您的 IAM 用户名或控制台登录名的派生形式。

   例如，要添加对名*ExampleSolution.py*为存储库的文件所做的编辑，*feature-randomizationfeature*该文件名*MyDemoRepo*为该分支的最近一次提交 ID 为*4c925148EXAMPLE*：

   ```
   aws codecommit put-file --repository-name MyDemoRepo --branch-name feature-randomizationfeature --file-content file://MyDirectory/ExampleSolution.py --file-path /solutions/ExampleSolution.py --parent-commit-id 4c925148EXAMPLE --name "María García" --email "maría_garcía@example.com" --commit-message "I fixed the bug Mary found."
   ```
**注意**  
如果您要添加更改后的二进制文件，请确保结合使用 `--file-content` 与表示法 `fileb://MyDirectory/MyFile.raw`。

   如果成功，该命令返回类似以下内容的输出：

   ```
   {
      "blobId": "2eb4af3bEXAMPLE",
      "commitId": "317f8570EXAMPLE",
      "treeId": "347a3408EXAMPLE"
   }
   ```

要删除文件，请使用 **delete-file** 命令。例如，要删除名为的分支*README.md*中名为、最新提交 ID 为*main*的文件，该文件位于名为的存储库*c5709475EXAMPLE*中*MyDemoRepo*：

```
aws codecommit delete-file --repository-name MyDemoRepo --branch-name main --file-path README.md --parent-commit-id c5709475EXAMPLE
```

如果成功，该命令返回类似以下内容的输出：

```
{
  "blobId":"559b44fEXAMPLE",
  "commitId":"353cf655EXAMPLE",
  "filePath":"README.md",
  "treeId":"6bc824cEXAMPLE"
}
```

## 编辑文件 (Git)
<a name="how-to-edit-file-git"></a>

您可以编辑本地存储库中的文件并将更改推送到 CodeCommit 存储库。有关更多信息，请参阅 [Git 入门和 AWS CodeCommit](getting-started.md)。