Introduction to GitOps
What is GitOps?
GitOps adds management of systems and apps to Git’s version control. It only trusts Git repositories as the truth when it comes to setups. GitOps automated deployment, ensuring the system matches the Git repository state.
History and Origins of GitOps
The Beginning - Git and DevOps
- Git: Created by Linus Torvalds in 2005, Git is a version control system. It’s like a digital notebook that keeps track of every change made to the code, allowing developers to go back and see or revert any change they made.
- DevOps: DevOps is a set of techniques that bring together the two fields of software development (Dev) and IT operations (Ops). The goal is to cut down on the time it takes to build a system and make sure that high-quality software is delivered all the time.
The Birth of GitOps
- Weaveworks: A company called Weaveworks coined the term “GitOps” in 2017. Weaveworks specializes in cloud computing and managing software deployments.
- Infrastructure as Code (IaC): Before GitOps, there was an idea called “Infrastructure as Code.” This means that computer data centres are managed and set up using machine-readable definition files instead of real hardware configuration or interactive configuration tools. IaC set the stage for GitOps by stressing the need to write down in code what the ideal state of infrastructure should be.