Git is the trigger for automated delivery
CI systems can run tests, linting, builds and security checks whenever commits or pull requests are pushed. CD systems can package and deploy approved changes.
Keep CI deterministic
A build should use declared dependencies and repeatable commands. Avoid relying on a developer's local environment or manually installed packages.
Protect deployment branches
Production deployments should normally require automated checks and, where appropriate, review or approval. Git branch protection and repository permissions can help enforce this workflow.