Need advice about which tool to choose?Ask the StackShare community!

AWS CodeCommit

327
823
+ 1
193
AWS CodeDeploy

391
620
+ 1
38
Add tool

AWS CodeCommit vs AWS CodeDeploy: What are the differences?

Introduction

AWS CodeCommit and AWS CodeDeploy are both services provided by Amazon Web Services (AWS) that are designed to facilitate the development and deployment of software applications. However, they serve different purposes and offer different functionalities. In this article, we will explore the key differences between AWS CodeCommit and AWS CodeDeploy.

  1. Integration with Version Control System: AWS CodeCommit is a fully-managed source control service that provides secure hosting for private Git repositories. It allows developers to easily collaborate on code, track changes, and manage multiple branches. On the other hand, AWS CodeDeploy is a fully-managed deployment service that automates the process of deploying applications to various compute resources such as EC2 instances, Lambda functions, and on-premises servers. While CodeCommit focuses on version control, CodeDeploy focuses on the deployment process.

  2. Primary Function: The primary function of AWS CodeCommit is to store and manage source code securely in the cloud. It provides features like pull requests, code reviews, and branch management. AWS CodeDeploy, on the other hand, is primarily used for automating application deployments, enabling developers to efficiently release their code to multiple environments, including production.

  3. Deployment Automation: AWS CodeDeploy allows developers to define the deployment process using YAML or JSON files, known as AppSpec files. These files specify the deployment steps, such as copying files, running scripts, and updating configurations. CodeDeploy supports various deployment strategies, including rolling updates, blue/green deployments, and canary deployments. CodeCommit does not offer deployment automation capabilities. It focuses solely on managing and versioning the source code.

  4. Integration with Continuous Integration/Continuous Deployment (CI/CD) Tools: AWS CodeDeploy can be integrated with popular CI/CD tools such as AWS CodePipeline, Jenkins, and GitLab CI/CD to create end-to-end automation for software releases. This allows developers to trigger deployments automatically whenever there is a new code commit or a successful build. CodeCommit also integrates with CI/CD tools but primarily focuses on the source code management aspect.

  5. Target Resources for Deployment: AWS CodeDeploy supports a wide range of target resources for deployment, including EC2 instances, on-premises servers, Lambda functions, and even Amazon ECS services. It provides flexibility and scalability when it comes to deploying applications across different compute resources. In contrast, CodeCommit does not have deployment capabilities, so it does not target any specific resources for deployment.

  6. Pricing Model: AWS CodeCommit and AWS CodeDeploy have different pricing models. CodeCommit charges users based on the number of active users, data transfer, and storage consumed. On the other hand, CodeDeploy charges users based on the number of on-premises instances, EC2 instances, or Lambda functions being deployed to, as well as any additional features like alarms and Auto Scaling groups. The pricing structure reflects the different functionalities and resources utilized by each service.

In summary, AWS CodeCommit is a source code management service focused on secure and collaborative code hosting, while AWS CodeDeploy is a deployment automation service designed to streamline the application release process. CodeCommit offers features such as pull requests and branch management, while CodeDeploy enables users to automate deployments to various resources using defined deployment strategies.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of AWS CodeCommit
Pros of AWS CodeDeploy
  • 44
    Free private repos
  • 26
    IAM integration
  • 24
    Pay-As-You-Go Pricing
  • 20
    Amazon feels the most Secure
  • 19
    Repo data encrypted at rest
  • 11
    Faster deployments when using other AWS services
  • 11
    I can make repository by myself if I have AWS account
  • 8
    AWS CodePipeline integration
  • 6
    Codebuild integration
  • 6
    Does not support web hooks yet! :(
  • 4
    Cost Effective
  • 2
    No Git LFS! Dealbreaker for me
  • 2
    Integrated with AWS Ecosystem
  • 2
    Elastic Beanstalk Integration
  • 1
    Integration via SQS/SNS for events (replaces webhooks)
  • 1
    IAM
  • 1
    Open source friendly
  • 1
    Only US Region
  • 1
    Available in Ireland (Dublin) region
  • 1
    CodeDeploy Integration
  • 1
    Issue tracker
  • 1
    CodeCommit Trigger for an AWS Lambda Function
  • 0
    Ui
  • 17
    Automates code deployments
  • 9
    Backed by Amazon
  • 7
    Adds autoscaling lifecycle hooks
  • 5
    Git integration

Sign up to add or upvote prosMake informed product decisions

Cons of AWS CodeCommit
Cons of AWS CodeDeploy
  • 12
    UI sucks
  • 4
    SLOW
  • 3
    No Issue Tracker
  • 2
    Bad diffing/no blame
  • 2
    NO LFS support
  • 2
    No fork
  • 2
    No webhooks
  • 1
    Can't download file from UI
  • 1
    Only time based triggers
  • 0
    Accident-prone UI
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    What is AWS CodeCommit?

    CodeCommit eliminates the need to operate your own source control system or worry about scaling its infrastructure. You can use CodeCommit to securely store anything from source code to binaries, and it works seamlessly with your existing Git tools.

    What is AWS CodeDeploy?

    AWS CodeDeploy is a service that automates code deployments to Amazon EC2 instances. AWS CodeDeploy makes it easier for you to rapidly release new features, helps you avoid downtime during deployment, and handles the complexity of updating your applications.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use AWS CodeCommit?
    What companies use AWS CodeDeploy?
    See which teams inside your own company are using AWS CodeCommit or AWS CodeDeploy.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with AWS CodeCommit?
    What tools integrate with AWS CodeDeploy?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    Blog Posts

    What are some alternatives to AWS CodeCommit and AWS CodeDeploy?
    GitHub
    GitHub is the best place to share code with friends, co-workers, classmates, and complete strangers. Over three million people use GitHub to build amazing things together.
    GitLab
    GitLab offers git repository management, code reviews, issue tracking, activity feeds and wikis. Enterprises install GitLab on-premise and connect it with LDAP and Active Directory servers for secure authentication and authorization. A single GitLab server can handle more than 25,000 users but it is also possible to create a high availability setup with multiple active servers.
    Bitbucket
    Bitbucket gives teams one place to plan projects, collaborate on code, test and deploy, all with free private Git repositories. Teams choose Bitbucket because it has a superior Jira integration, built-in CI/CD, & is free for up to 5 users.
    GitHub Enterprise
    GitHub Enterprise lets developers use the tools they love across the development process with support for popular IDEs, continuous integration tools, and hundreds of third party apps and services.
    SVN (Subversion)
    Subversion exists to be universally recognized and adopted as an open-source, centralized version control system characterized by its reliability as a safe haven for valuable data; the simplicity of its model and usage; and its ability to support the needs of a wide variety of users and projects, from individuals to large-scale enterprise operations.
    See all alternatives