Table Of Contents

Feedback

User Guide

First time using the AWS CLI? See the User Guide for help getting started.

[ aws . codecommit ]

put-file

Description

Adds or updates a file in a branch in an AWS CodeCommit repository, and generates a commit for the addition in the specified branch.

See also: AWS API Documentation

See 'aws help' for descriptions of global parameters.

Synopsis

  put-file
--repository-name <value>
--branch-name <value>
--file-content <value>
--file-path <value>
[--file-mode <value>]
[--parent-commit-id <value>]
[--commit-message <value>]
[--name <value>]
[--email <value>]
[--cli-input-json <value>]
[--generate-cli-skeleton <value>]

Options

--repository-name (string)

The name of the repository where you want to add or update the file.

--branch-name (string)

The name of the branch where you want to add or update the file. If this is an empty repository, this branch will be created.

--file-content (blob)

The content of the file, in binary object format.

--file-path (string)

The name of the file you want to add or update, including the relative path to the file in the repository.

Note

If the path does not currently exist in the repository, the path will be created as part of adding the file.

--file-mode (string)

The file mode permissions of the blob. Valid file mode permissions are listed below.

Possible values:

  • EXECUTABLE
  • NORMAL
  • SYMLINK

--parent-commit-id (string)

The full commit ID of the head commit in the branch where you want to add or update the file. If this is an empty repository, no commit ID is required. If this is not an empty repository, a commit ID is required.

The commit ID must match the ID of the head commit at the time of the operation, or an error will occur, and the file will not be added or updated.

--commit-message (string)

A message about why this file was added or updated. While optional, adding a message is strongly encouraged in order to provide a more useful commit history for your repository.

--name (string)

The name of the person adding or updating the file. While optional, adding a name is strongly encouraged in order to provide a more useful commit history for your repository.

--email (string)

An email address for the person adding or updating the file.

--cli-input-json (string) Performs service operation based on the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, the CLI values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See 'aws help' for descriptions of global parameters.

Examples

To add a file to a repository

This example demonstrates how to add a file named 'ExampleSolution.py' to a repository named 'MyDemoRepo' to a branch named 'feature-randomizationfeature' whose most recent commit has an ID of '4c925148EXAMPLE':

Command:

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 "Maria Garcia" --email "maria_garcia@example.com" --commit-message "I added a third randomization routine."

Output:

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

Output

commitId -> (string)

The full SHA of the commit that contains this file change.

blobId -> (string)

The ID of the blob, which is its SHA-1 pointer.

treeId -> (string)

The full SHA-1 pointer of the tree information for the commit that contains this file change.