Developer Tools | AWS CodeCommit Flashcards
What is AWS CodeCommit?
General
AWS CodeCommit | Developer Tools
AWS CodeCommit is a secure, highly scalable, managed source control service that hosts private Git repositories. AWS CodeCommit eliminates the need for you to operate your own source control system or worry about scaling its infrastructure. You can use AWS CodeCommit to store anything from code to binaries, and it works seamlessly with your existing Git tools.
What is Git?
General
AWS CodeCommit | Developer Tools
Git is an open-source distributed version control system. To work with AWS CodeCommit repositories, you use the Git command line interface (CLI) or any of the available Git clients. To learn more about Git, see the Git documentation. To learn more about using AWS CodeCommit with Git, see Getting Started with AWS CodeCommit.
Who should use AWS CodeCommit?
General
AWS CodeCommit | Developer Tools
AWS CodeCommit is designed for software developers who need a secure, reliable, and scalable source control system to store and version their code. In addition, AWS CodeCommit can be used by anyone looking for an easy to use, fully managed data store that is version controlled. For example, IT administrators can use AWS CodeCommit to store their scripts and configurations. Web designers can use AWS CodeCommit to store HTML pages and images.
How is AWS CodeCommit different from other Git-based source control systems?
General
AWS CodeCommit | Developer Tools
AWS CodeCommit offers a number of features not offered by other Git source control systems:
Fully Managed –AWS CodeCommit eliminates the need to host, maintain, backup, and scale your own source control servers.
Secure –AWS CodeCommit automatically encrypts your files in transit and at rest. AWS CodeCommit is integrated with AWS Identity and Access Management (IAM), allowing you to assign user-specific permissions to your repositories.
Highly Available – AWS CodeCommit is built on highly scalable, redundant, and durable AWS services such as Amazon S3 and Amazon DynamoDB.
Scalable - AWS CodeCommit allows you store any number of files and there are no repository size limits.
Faster Development Lifecycle - AWS CodeCommit keeps your repositories close to your build, staging, and production environments in the AWS cloud. This allows you to increase the speed and frequency of your development lifecycle.
How does AWS CodeCommit compare to a versioned S3 bucket?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
AWS CodeCommit is designed for collaborative software development. It manages batches of changes across multiple files, offers parallel branching, and includes version differencing (“diffing”). In comparison, Amazon S3 versioning supports recovering past versions of individual files but doesn’t support tracking batched changes that span multiple files or other features needed for collaborative software development.
What is Git? Git is an open-source distributed version control system. To work with AWS CodeCommit repositories, you use the Git command line interface (CLI) or any of the available Git clients. To learn more about Git, see the Git documentation. To learn more about using AWS CodeCommit with Git, see Getting Started with AWS CodeCommit.
How do I get started with AWS CodeCommit?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
You can sign in to the AWS Management Console, create a repository, and start working with the repository using Git. If you want an introduction to the service, see Getting Started, which includes a step-by-step tutorial.
How do I create a repository?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
You can create a repository from the AWS Management Console or by using the AWS Command Line Interface (AWS CLI), the AWS SDKs, or the AWS CodeCommit APIs.
How do I update files in my repository?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
You use Git to work with the repository. For example, you can use the git clone command to make a local copy of the AWS CodeCommit repository. Make changes to the local files and use the git commit command when you’re ready to save the changes. Finally, use the git push command to upload the changes to the AWS CodeCommit repository. For step-by-step instructions, see Getting Started with AWS CodeCommit.
How do I import my existing repository to AWS CodeCommit?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
You can use Git to import any existing Git repository to AWS CodeCommit. For other repositories, such as Subversion and Perforce, you can use a Git importer to first migrate it to a Git repository. For step by step instructions on importing Git repositories, see Migrate an Existing Repository to AWS CodeCommit. For instructions on migrating other repositories to Git, see the Git migration documentation.
What Git operations are currently supported by AWS CodeCommit?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
AWS CodeCommit currently supports clone, pull, push and fetch commands.
Does AWS CodeCommit support Git submodules?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
Yes. AWS CodeCommit can be used with Git repositories that include submodules.
What are the service limits when using AWS CodeCommit?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
For information on the service limits, see Limits.
What is the maximum size for a single file that I can store in CodeCommit?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
A single file in a repository cannot be more than 2 GB in size.
How do I backup my repository?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
If you have a local copy of the repository from doing a full git clone, you can use that to restore data. If you want additional backups, there are multiple ways to do so. One way is to install Git on your backup server and run a scheduled job that uses the git clone command to take regular snapshots of your repository. You can use git pull instead of git clone if you want to copy only the incremental changes. Note that these operations may incur an additional user and/or request charges based on how you setup the backup server and the polling frequency.
How do I restore a deleted AWS CodeCommit repository?
Using AWS CodeCommit
AWS CodeCommit | Developer Tools
Deleting an AWS CodeCommit repository is a destructive one-way operation that cannot be undone. To restore a deleted repository, you will need to create the repository again and use either a backup or a local copy from a full clone to upload the data. We recommend using IAM policies along with MFA-protection to restrict users who can delete repositories. For more details, see the Can I use AWS Identity and Access Management (IAM) to manage access to AWS CodeCommit? question in the Security section of the FAQ.