$linuxjunkies
>

GitOps

GitOps is an operational framework that uses Git as the single source of truth for declaring infrastructure and application configurations, automatically synchronizing the actual state with what's defined in version control.

GitOps treats your Git repository as the authoritative source for all infrastructure and application deployments. Instead of manually applying changes or using imperative scripts, you describe your desired state in Git, and automated tools continuously reconcile the live system to match that declared state.

The core workflow involves: commit configuration changes to Git → automated tools (like Flux or ArgoCD) detect the change → tools apply those changes to your Kubernetes cluster or infrastructure. This enables version control, audit trails, easy rollbacks, and peer review of all operational changes.

Example: Rather than running kubectl apply -f deployment.yaml manually, you commit the YAML to Git, and a GitOps controller automatically deploys it to your cluster. If someone manually changes the cluster, the controller detects the drift and reverts it to match Git.

Related terms