Overview
In GitOps, Git is the 'single source of truth' for both infrastructure and application code. The desired state of the system is defined in Git, and automated tools ensure that the actual state of the environment matches the state defined in the repository.
Core Principles
- Declarative: The entire system is described declaratively.
- Versioned and Immutable: The desired state is stored in Git, providing a full audit trail and easy rollbacks.
- Pulled Automatically: Software agents automatically pull the desired state from Git.
- Continuously Reconciled: Agents continuously monitor the system and correct any deviations from the desired state.
Benefits
- Increased Security: No need for manual access to production environments.
- Faster Recoveries: Reverting a change is as simple as a
git revert. - Improved Developer Experience: Developers use familiar Git workflows for infrastructure changes.