Continuous integration (CI) is a software development practice where code changes are frequently integrated into a shared repository. Its goal is to detect integration issues early by automating code builds and running tests on each integration. Continuous delivery (CD), on the other hand, is an extension of CI that automates the entire software release process. Its aim is to ensure the software is always in a deployable state, thus allowing teams to deliver new features and updates to production in a faster, more reliable manner.