Continuous deployment or continuous delivery is an approach to development that leads to code that can be deployed at any time. But of course, this also means that any committed code will eventually be deployed at any given time.
Continuous deployment adds a new set of challenges to developers and operations people. The fact that your code needs to be ready to be deployed at any time means that you need to test early and write good integration tests as well.
Delivery or deployment are not manual steps but are automated in a CI/CD pipeline. Take the PowerShell repository as an example again. Code is committed and tests are executed in the CI part of the CI/CD pipeline.
If all tests are successful, the CD part of the pipeline comes into play and a module is released to the PowerShell gallery, or new binaries are compiled and pushed to repositories.
...