StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. DevOps
  3. Continuous Deployment
  4. Server Configuration And Automation
  5. Ansible vs Git

Ansible vs Git

OverviewDecisionsComparisonAlternatives

Overview

Ansible
Ansible
Stacks19.5K
Followers15.6K
Votes1.3K
GitHub Stars66.9K
Forks24.1K
Git
Git
Stacks343.7K
Followers184.2K
Votes6.6K
GitHub Stars57.1K
Forks26.9K

Ansible vs Git: What are the differences?

Introduction

Ansible and Git are both widely used tools in software development and automation. While they serve different purposes, they do have some key differences.

  1. Architecture: Ansible is an automation tool that uses a client-server architecture, where the control machine executes tasks on remote target machines. On the other hand, Git is a distributed version control system that does not require a central server and allows developers to work offline and commit changes locally.
  2. Functionality: Ansible focuses on configuration management and automation of IT infrastructure. It is used to set up and maintain servers, deploy applications, and manage network devices. Git, on the other hand, is primarily used for version control, allowing developers to collaborate, track changes, and manage source code efficiently.
  3. Ease of Use: Ansible uses a declarative language that is easy to read and understand, making it accessible to non-programmers. It utilizes human-readable YAML files for defining tasks and configurations. In contrast, Git requires some programming knowledge, especially when resolving merge conflicts and working with branches.
  4. Scope: Ansible is designed to handle a wide range of tasks, from simple one-liner commands to complex multi-machine workflows. It can be used to manage and automate infrastructure at scale. Git, on the other hand, is focused on managing source code and does not have the same level of automation capabilities as Ansible.
  5. Workflow: Ansible follows a push-based model, where the control machine pushes instructions to the target machines and executes tasks remotely. It ensures the desired configuration state is achieved on the target machines. Git, on the other hand, follows a pull-based model, where developers pull changes from a central repository or clone repositories to their local machines for development.
  6. Collaboration: Ansible does not provide built-in collaboration features and is primarily used for automation and configuration management tasks. Git, on the other hand, is designed for collaboration and allows multiple developers to work on the same project simultaneously, merging their changes and resolving conflicts as needed.

In Summary, Ansible is an automation tool primarily used for configuration management and infrastructure automation, while Git is a distributed version control system focused on source code management and collaboration among developers.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Advice on Ansible, Git

Anonymous
Anonymous

Sep 17, 2019

Needs advice

I'm just getting started using Vagrant to help automate setting up local VMs to set up a Kubernetes cluster (development and experimentation only). (Yes, I do know about minikube)

I'm looking for a tool to help install software packages, setup users, etc..., on these VMs. I'm also fairly new to Ansible, Chef, and Puppet. What's a good one to start with to learn? I might decide to try all 3 at some point for my own curiosity.

The most important factors for me are simplicity, ease of use, shortest learning curve.

329k views329k
Comments

Detailed Comparison

Ansible
Ansible
Git
Git

Ansible is an IT automation tool. It can configure systems, deploy software, and orchestrate more advanced IT tasks such as continuous deployments or zero downtime rolling updates. Ansible’s goals are foremost those of simplicity and maximum ease of use.

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

Ansible's natural automation language allows sysadmins, developers, and IT managers to complete automation projects in hours, not weeks.;Ansible uses SSH by default instead of requiring agents everywhere. Avoid extra open ports, improve security, eliminate "managing the management", and reclaim CPU cycles.;Ansible automates app deployment, configuration management, workflow orchestration, and even cloud provisioning all from one system.
-
Statistics
GitHub Stars
66.9K
GitHub Stars
57.1K
GitHub Forks
24.1K
GitHub Forks
26.9K
Stacks
19.5K
Stacks
343.7K
Followers
15.6K
Followers
184.2K
Votes
1.3K
Votes
6.6K
Pros & Cons
Pros
  • 284
    Agentless
  • 210
    Great configuration
  • 199
    Simple
  • 176
    Powerful
  • 155
    Easy to learn
Cons
  • 8
    Dangerous
  • 5
    Hard to install
  • 3
    Bloated
  • 3
    Backward compatibility
  • 3
    Doesn't Run on Windows
Pros
  • 1429
    Distributed version control system
  • 1053
    Efficient branching and merging
  • 959
    Fast
  • 843
    Open source
  • 726
    Better than svn
Cons
  • 16
    Hard to learn
  • 11
    Inconsistent command line interface
  • 9
    Easy to lose uncommitted work
  • 8
    Worst documentation ever possibly made
  • 5
    Awful merge handling
Integrations
Nexmo
Nexmo
Stackdriver
Stackdriver
VMware vSphere
VMware vSphere
Docker
Docker
OpenStack
OpenStack
Amazon EC2
Amazon EC2
Rackspace Cloud Servers
Rackspace Cloud Servers
Google Compute Engine
Google Compute Engine
New Relic
New Relic
PagerDuty
PagerDuty
No integrations available

What are some alternatives to Ansible, Git?

Chef

Chef

Chef enables you to manage and scale cloud infrastructure with no downtime or interruptions. Freely move applications and configurations from one cloud to another. Chef is integrated with all major cloud providers including Amazon EC2, VMWare, IBM Smartcloud, Rackspace, OpenStack, Windows Azure, HP Cloud, Google Compute Engine, Joyent Cloud and others.

Terraform

Terraform

With Terraform, you describe your complete infrastructure as code, even as it spans multiple service providers. Your servers may come from AWS, your DNS may come from CloudFlare, and your database may come from Heroku. Terraform will build all these resources across all these providers in parallel.

Capistrano

Capistrano

Capistrano is a remote server automation tool. It supports the scripting and execution of arbitrary tasks, and includes a set of sane-default deployment workflows.

Puppet Labs

Puppet Labs

Puppet is an automated administrative engine for your Linux, Unix, and Windows systems and performs administrative tasks (such as adding users, installing packages, and updating server configurations) based on a centralized specification.

Salt

Salt

Salt is a new approach to infrastructure management. Easy enough to get running in minutes, scalable enough to manage tens of thousands of servers, and fast enough to communicate with them in seconds. Salt delivers a dynamic communication bus for infrastructures that can be used for orchestration, remote execution, configuration management and much more.

Mercurial

Mercurial

Mercurial is dedicated to speed and efficiency with a sane user interface. It is written in Python. Mercurial's implementation and data structures are designed to be fast. You can generate diffs between revisions, or jump back in time within seconds.

Fabric

Fabric

Fabric is a Python (2.5-2.7) library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks. It provides a basic suite of operations for executing local or remote shell commands (normally or via sudo) and uploading/downloading files, as well as auxiliary functionality such as prompting the running user for input, or aborting execution.

AWS OpsWorks

AWS OpsWorks

Start from templates for common technologies like Ruby, Node.JS, PHP, and Java, or build your own using Chef recipes to install software packages and perform any task that you can script. AWS OpsWorks can scale your application using automatic load-based or time-based scaling and maintain the health of your application by detecting failed instances and replacing them. You have full control of deployments and automation of each component

SVN (Subversion)

SVN (Subversion)

Subversion exists to be universally recognized and adopted as an open-source, centralized version control system characterized by its reliability as a safe haven for valuable data; the simplicity of its model and usage; and its ability to support the needs of a wide variety of users and projects, from individuals to large-scale enterprise operations.

Plastic SCM

Plastic SCM

Plastic SCM is a distributed version control designed for big projects. It excels on branching and merging, graphical user interfaces, and can also deal with large files and even file-locking (great for game devs). It includes "semantic" features like refactor detection to ease diffing complex refactors.

Related Comparisons

GitHub
Bitbucket

Bitbucket vs GitHub vs GitLab

GitHub
Bitbucket

AWS CodeCommit vs Bitbucket vs GitHub

Kubernetes
Rancher

Docker Swarm vs Kubernetes vs Rancher

gulp
Grunt

Grunt vs Webpack vs gulp

Graphite
Kibana

Grafana vs Graphite vs Kibana