AWS adds conflict resolution, squash merge to its GitHub homage CodeCommit

Amazon Web Services (AWS) has added key features to the console and API for its source code repository, CodeCommit.

Now you can perform a squash merge – which cleans up code history by merging changes from a branch without adding that branch as a parent – as well as conflict resolution in the AWS CodeCommit console.

CodeCommit is the AWS code repository service, an alternative to better-known services such as GitHub and GitLab.

CodeCommit supports Git so these operations were already available using Git commands. What AWS has done, though, is to make the browser-based console more capable, as well as enhancing the REST API, which developers can use to interact with the service programmatically.
Since AWS is the largest cloud provider by some margin, you may wonder why CodeCommit is not more widely used. A quick search for tags on the developer site StackOverflow, for example, shows just 252 questions tagged aws-codecommit, compared to 33,000 for GitHub and 7,200 for GitLab.

AWS CodeCommit probably does deserve to be better known. It has strong security features, with encryption of files in transit and at rest. It can store any type of file and with no repository size limitations. The free tier is generous, supporting five active users, 50GB of storage and 10,000 Git requests per month. This is not a trial, but a permanent offer.

The reason for this generosity is no doubt that AWS expects at least some of your code to end up running on its platform, as well as the fact that similar or better free services are available elsewhere. A related service, AWS CodePipeline, lets you automate build, test and release so you can set up a complete DevOps story on Amazon’s platform. Another is AWS CodeBuild for running unit tests.

CodeCommit is strongly integrated with other AWS services including the IAM (Identity and Access Management) – both a strength and a weakness, depending how embedded you are with AWS. Another issue is lack of community presence. There are no concessions for open-source projects.