Version Control Software for Mac

View 30 business solutions

Browse free open source Version Control software and projects for Mac below. Use the toggles on the left to filter open source Version Control software by OS, license, language, programming language, and project status.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 1
    KDiff3

    KDiff3

    A graphical text difference analyzer

    This repository is no longer maintained and is kept for archival purposes. See https://invent.kde.org/sdk/kdiff3 for the newest code and https://download.kde.org/stable/kdiff3/ for release bundles. All bugs should be filed at bugs.kde.org. KDiff3 is a graphical text difference analyzer for up to 3 input files, provides character-by-character analysis and a text merge tool with integrated editor. It can also compare and merge directories. Platform-independant.
    Leader badge
    Downloads: 1,811 This Week
    Last Update:
    See Project
  • 2
    SFTPGo

    SFTPGo

    Fully featured and highly configurable SFTP server with optional HTTP

    Fully featured and highly configurable SFTP server with optional HTTP/S, FTP/S and WebDAV support. Several storage backends are supported: local filesystem, encrypted local filesystem, S3 (compatible) Object Storage, Google Cloud Storage, Azure Blob Storage, SFTP. SFTPGo is an Open Source project and you can of course use it for free but please don't ask for free support as well. Support for serving local filesystem, encrypted local filesystem, S3 Compatible Object Storage, Google Cloud Storage, Azure Blob Storage or other SFTP accounts over SFTP/SCP/FTP/WebDAV. Virtual folders are supported: a virtual folder can use any of the supported storage backends. So you can have, for example, an S3 user that exposes a GCS bucket (or part of it) on a specified path and an encrypted local filesystem on another one. Virtual folders can be private or shared among multiple users, for shared virtual folders you can define different quota limits for each user.
    Downloads: 68 This Week
    Last Update:
    See Project
  • 3
    ripgrep

    ripgrep

    Regex pattern directory search tool that respects your .gitignore

    ripgrep is a line-oriented search tool that actively searches the directory you're currently in for a regex pattern. By default, ripgrep will ignore your .gitignore and skip hidden files or directories and binary files automatically. ripgrep has first class support on Windows, macOS and Linux, with binary downloads available for every release. ripgrep is similar to other popular search tools like The Silver Searcher, ack and grep. ripgrep supports arbitrary input preprocessing filters which could be PDF text extraction, less supported decompression, decrypting, automatic encoding detection and so on. In other words, use ripgrep if you like speed, filtering by default, fewer bugs and Unicode support.
    Downloads: 63 This Week
    Last Update:
    See Project
  • 4
    GitLab

    GitLab

    Please open new issues in our issue tracker on GitLab

    GitLab is a single-application DevOps platform that brings source control, CI/CD, package registries, security scanning, and deployment pipelines under one roof to accelerate software delivery. Built around Git repositories and merge-request workflows, it tightly integrates continuous integration, automated testing, code review, and release orchestration so teams can move from idea to production within a unified UI and policy model. GitLab’s features extend into the operational lifecycle—container registries, infrastructure as code, monitoring dashboards, and incident management—allowing platform teams to define guardrails and compliance as code across projects and groups. It supports extensive automation via pipelines, runners, webhooks, and a comprehensive REST/GraphQL API, enabling complex workflows like canary deployments, feature flagging, and security scanning as part of merge request gates.
    Downloads: 50 This Week
    Last Update:
    See Project
  • Ship Agents Faster Icon
    Ship Agents Faster

    Transform your applications and workflows into powerful agentic systems at global scale.

    Gemini Enterprise Agent Platform lets you rapidly build, scale, govern and optimize production-ready agents grounded in your organization's data. The platform enables developers to build custom or pre-built agents for virtually any use case. New customers get $300 in free credits.
    Get Started Free
  • 5
    Git Extensions

    Git Extensions

    Git Extensions is a standalone UI tool for managing git repositories.

    Git Extensions is now hosted on GitHub ============================== Please update your bookmarks and use the links below for downloading and reporting issues. * Download latest version (Windows only): https://github.com/gitextensions/gitextensions/releases/latest * Download latest cross-platform version (Windows and Linux/Mac): https://github.com/gitextensions/gitextensions/releases/v2.51.05 * Issue tracker: http://github.com/gitextensions/gitextensions/issues * Source code: http://github.com/gitextensions/gitextensions * Online manual: https://git-extensions-documentation.readthedocs.org/en/latest/
    Leader badge
    Downloads: 216 This Week
    Last Update:
    See Project
  • 6
    git absorb

    git absorb

    git commit --fixup, but automatic

    This is a port of Facebook's hg absorb. Facebook demoed hg absorb which is probably the coolest workflow enhancement I've seen to version control in years. Essentially, when your working directory has uncommitted changes on top of draft changesets, you can run hg absorb and the uncommitted modifications are automagically folded ("absorbed") into the appropriate draft ancestor changesets. This is essentially doing hg histedit + "roll" actions without having to make a commit or manually make history modification rules. The command essentially looks at the lines that were modified, finds a changeset modifying those lines, and amends that changeset to include your uncommitted changes. If the changes can't be made without conflicts, they remain uncommitted. This workflow is insanely useful for things like applying review feedback. You just make file changes, run hg absorb and the mapping of changes to commits sorts itself out. It is magical.
    Downloads: 40 This Week
    Last Update:
    See Project
  • 7
    Aptana Studio 3

    Aptana Studio 3

    The professional, open source development tool for the open web

    Build and test your web applications all in one environment with Aptana Studio 3, the industry’s leading web application IDE. A powerful web development engine, Aptana Studio enables you to build, edit, preview and debug with support for HTML5, CSS3, JavaScript, Python, PHP and Ruby on Rails.
    Downloads: 38 This Week
    Last Update:
    See Project
  • 8
    Git

    Git

    Fast, scalable, distributed revision control system

    Git is a free, distributed version control system created by Linus Torvalds in 2005 to manage the development of the Linux kernel. It emphasizes speed, data integrity, and support for non-linear workflows, and remains the most popular VCS for collaborative software development. Git is an Open Source project covered by the GNU General Public License version 2 (some parts of it are under different licenses, compatible with the GPLv2). It was originally written by Linus Torvalds with help of a group of hackers around the net. Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals.
    Downloads: 33 This Week
    Last Update:
    See Project
  • 9
    nvm

    nvm

    Version manager for node.js

    Node Version Manager or nvm is a POSIX-compliant bash script for managing multiple active node.js versions. It allows you to access every long term support (LTS) version of node.js, download any of these remote LTS versions locally, set up aliases so you can easily switch between downloaded Node versions, and automatically use the version of node.js that is specified if a .nvmrc file is present. Nvm can work on any POSIX-compliant shell, particularly on windows WSL, macOS and unix platforms. It is designed to be installed per-user, and invoked per-shell.
    Downloads: 27 This Week
    Last Update:
    See Project
  • Demo Series - Small Business Backup By Veeam Icon
    Demo Series - Small Business Backup By Veeam

    Learn how to protect your Microsoft 365 data, with simple, actionable tips today.

    Watch this on-demand demo series and learn how to protect your Microsoft 365 data with clear, simple, actionable steps that are easy to implement for businesses of all sizes.
    Watch Demo Series
  • 10
    Git Extensions

    Git Extensions

    UI tool for managing git repositories

    Git Extensions is a standalone UI tool for managing Git repositories. It also integrates with Windows Explorer and Microsoft Visual Studio (2015/2017/2019). The full commit history can be browsed. Branches are shown using a graph which highlights commits that are included in the current revision. Explore the history of single files. Renamed and moved files are matched and shown in a single history. You do not need to mark files as renamed/moved. The system detects renamed files automatically. Find the last person that edited a specific part of a file. Double click on the line shows the commit and allows you to drill-down to other files. Version 2.x of Git Extensions runs on multiple platforms using Mono. The active community of Git Extensions is supporting Git Extensions since 2008.
    Downloads: 22 This Week
    Last Update:
    See Project
  • 11
    GitLens

    GitLens

    Supercharge Git inside VS Code and unlock untapped knowledge

    GitLens, part of GitKraken’s legendary Git tools, is an open-source extension for Visual Studio Code. GitLens supercharges Git inside VS Code and unlocks untapped knowledge within each repository. It helps you to visualize code authorship at a glance via Git blame annotations and CodeLens, seamlessly navigate and explore Git repositories, gain valuable insights via rich visualizations and powerful comparison commands, and so much more. GitLens simply helps you better understand code. Quickly glimpse into whom, why, and when a line or code block was changed. Jump back through history to gain further insights as to how and why the code evolved. Effortlessly explore the history and evolution of a codebase. Today, with over 18 million installs and over 120 million downloads, GitLens is loved and relied upon by millions of users, ranging from single developers to large enterprise teams.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 12
    posh-git

    posh-git

    A PowerShell environment for Git

    posh-git is a PowerShell module which provides Git/PowerShell integration. The prompt within Git repositories can show the current branch and the state of files (additions, modifications, deletions) within. Provides tab completion for common commands when using git. Prompt formatting, among other things, can be customized. Displaying file status in the git prompt for a very large repo can be prohibitively slow. Rather than turn off file status entirely, you can disable it on a repo-by-repo basis by adding individual repository paths. PowerShell generates its prompt by executing a prompt function, if one exists. posh-git defines such a function in profile.example.ps1 that outputs the current working directory followed by an abbreviated git status.
    Downloads: 21 This Week
    Last Update:
    See Project
  • 13
    Gitea

    Gitea

    A painless self-hosted Git service

    Gitea - Git with a cup of tea - is the fastest, easiest, most hassle-free way of setting up a self-hosted Git service. It is a community-managed lightweight code hosting solution that has very minimal requirements and is very easy to install. Written in Go, it can run on any platform Go can compile for including Windows, Linux, macOS, ARM and PowerPC architectures. Gitea was originally forked from the Gogs project in 2016, but has since drastically evolved into the project that it is today.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 14
    Gitleaks

    Gitleaks

    Protect and discover secrets using Gitleaks

    Gitleaks is a fast, lightweight, portable, and open-source secret scanner for git repositories, files, and directories. With over 6.8 million docker downloads, 11.2k GitHub stars, 1.7 million GitHub Downloads, thousands of weekly clones, and over 400k homebrew installs, gitleaks is the most trusted secret scanner among security professionals, enterprises, and developers. Gitleaks-Action is our official GitHub Action. You can use it to automatically run a gitleaks scan on all your team's pull requests and commits, or run on-demand scans. If you are scanning repos that belong to a GitHub organization account, then you'll have to obtain a license. Gitleaks can be installed using Homebrew, Docker, or Go. Gitleaks is also available in binary form for many popular platforms and OS types on the releases page. In addition, Gitleaks can be implemented as a pre-commit hook directly in your repo or as a GitHub action using Gitleaks-Action.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 15
    gitbatch

    gitbatch

    manage your git repositories in one place

    Managing multiple git repositories is easier than ever. I (was) often end up working on many directories and manually pulling updates etc. To make this routine faster, I created a simple tool to handle this job. Although the focus is batch jobs, you can still do de facto micro-management of your git repositories (e.g add/reset, stash, commit etc.) run the gitbatch command from the parent of your git repositories. For start-up options simply gitbatch --help.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 16
    Logseq

    Logseq

    A privacy-first, open-source platform for knowledge management

    Logseq is a privacy-first, open-source knowledge base that works on top of local plain-text Markdown and Org-mode files. Use it to write, organize and share your thoughts, keep your to-do list, and build your own digital garden. Logseq is a platform for knowledge management and collaboration. It focuses on privacy, longevity, and user control. The server will never store or analyze your private notes. Your data are plain text files and we currently support both Markdown and Emacs Org-mode (more to be added soon). In the unlikely event that the website is down or cannot be maintained, your data is, and will always be yours. No data lock-in, no proprietary formats, you can edit the same Markdown/Org-mode file with any tools at the same time. Connect your [[ideas]] and [[thoughts]] with Logseq. Your knowledge graph grows just as your brain generates and connects neurons from new knowledge and ideas.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 17
    Diffuse
    Diffuse is a graphical tool for comparing and merging text files. It can retrieve files for comparison from Bazaar, CVS, Darcs, Git, Mercurial, Monotone, RCS, Subversion, and SVK repositories.
    Leader badge
    Downloads: 87 This Week
    Last Update:
    See Project
  • 18
    Delta

    Delta

    A viewer for git and diff output

    Code evolves, and we all spend time studying diffs. Delta aims to make this both efficient and enjoyable: it allows you to make extensive changes to the layout and styling of diffs, as well as allowing you to stay arbitrarily close to the default git/diff output. Language syntax highlighting with color themes. Within-line highlights based on a Levenshtein edit inference algorithm. Git style strings (foreground color, background color, font attributes) are supported for >20 stylable elements. Delta provides Stylable box/line decorations to draw attention to commit, file and hunk header sections. Support for Git's color-moved feature. Code can be copied directly from the diff. n and N keybindings to move between files in large diffs, and between diffs in log -p views. Commit hashes can be formatted as terminal hyperlinks to the GitHub/GitLab/Bitbucket page. Delta acts as a pager for git's output, and delta in turn passes its own output on to a "real" pager.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 19
    fnm

    fnm

    Fast and simple Node.js version manager, built in Rust

    fnm (Fast Node Manager) is a blazing-fast, minimalist Node.js version manager written in Rust. It allows users to install and switch between Node.js versions with near-instant startup, supports .nvmrc and .node-version files, and offers easy cross-platform installation. It’s significantly faster than traditional bash-based managers.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 20
    pretty-quick

    pretty-quick

    Get Pretty Quick

    Runs Prettier on your changed files. Pre-commit mode. Under this flag only staged files will be formatted, and they will be re-staged after formatting. Partially staged files will not be re-staged after formatting and pretty-quick will exit with a non-zero exit code. The intent is to abort the git commit and allow the user to amend their selective staging to include formatting fixes. When not in staged pre-commit mode, use this flag to compare changes with the specified branch. Defaults to master (git) / default (hg) branch. Do not resolve prettier config when determining which files to format, just use standard set of supported file types & extensions prettier supports. This may be useful if you do not need any customization and see performance issues. Check that files are correctly formatted, but don't format them. This is useful on CI to verify that all changed files in the current branch were correctly formatted.
    Downloads: 14 This Week
    Last Update:
    See Project
  • 21
    Dolt

    Dolt

    Dolt, it's Git for data

    Dolt is a SQL database that you can fork, clone, branch, merge, push and pull just like a git repository. Connect to Dolt just like any MySQL database to run queries or update the data using SQL commands. Use the command line interface to import CSV files, commit your changes, push them to a remote, or merge your teammate's changes. All the commands you know for Git work exactly the same for Dolt. Git versions files, Dolt versions tables. It's like Git and MySQL had a baby. We also built DoltHub, a place to share Dolt databases. We host public data for free. If you want to host your own version of DoltHub, we have DoltLab. If you want us to run a Dolt server for you, we have Hosted Dolt. MySQL comes with a MySQL server called mysqld and a MySQL client called mysql. You're only interested in the client. After following the instructions from MySQL's documentation, make sure you have a copy of the mysql client on your path.
    Downloads: 13 This Week
    Last Update:
    See Project
  • 22
    gitsigns.nvim

    gitsigns.nvim

    Git integration for buffers

    Super fast git decorations implemented purely in lua/teal. Signs for added, removed, and changed lines. Asynchronous using luv. Navigation between hunks. Stage hunks (with undo). Preview diffs of hunks (with word diff). Customizable (signs, highlights, mappings, etc). Status bar integration. Git blame a specific line using virtual text. Hunk text object. Automatically follow files moved in the index. Live intra-line word diff. Ability to display deleted/changed lines via virtual lines. Support for yadm. Support for detached working trees. If you are running a development version of Neovim (aka master), then breakage may occur if your build is behind latest. Gitsigns provides an on_attach callback which can be used to setup buffer mappings. This plugin is actively developed and by one of the most well regarded vim plugin developers. Gitsigns will only implement features of this plugin if: it is simple, or, the technologies leveraged by Gitsigns (LuaJIT, Libuv, Neovim's API, etc).
    Downloads: 13 This Week
    Last Update:
    See Project
  • 23
    Watchtower

    Watchtower

    A process for automating Docker container base image updates

    With watchtower you can update the running version of your containerized app simply by pushing a new image to the Docker Hub or your own image registry. Watchtower will pull down your new image, gracefully shut down your existing container and restart it with the same options that were used when it was deployed initially. Watchtower is an application that will monitor your running Docker containers and watch for changes to the images that those containers were originally started from. If watchtower detects that an image has changed, it will automatically restart the container using the new image. With watchtower you can update the running version of your containerized app simply by pushing a new image to the Docker Hub or your own image registry. Watchtower will pull down your new image, gracefully shut down your existing container and restart it with the same options that were used when it was deployed initially.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 24
    Git Credential Manager

    Git Credential Manager

    Secure, cross-platform Git credential storage with authentication

    Git Credential Manager (GCM) is a secure Git credential helper built on .NET that runs on Windows, macOS, and Linux. It aims to provide a consistent and secure authentication experience, including multi-factor auth, to every major source control hosting service and platform. GCM supports (in alphabetical order) Azure DevOps, Azure DevOps Server (formerly Team Foundation Server), Bitbucket, GitHub, and GitLab. Compare to Git's built-in credential helpers (Windows: wincred, macOS: osxkeychain, Linux: gnome-keyring/libsecret), which provide single-factor authentication support for username/password only. GCM replaces both the .NET Framework-based Git Credential Manager for Windows and the Java-based Git Credential Manager for Mac and Linux. Git Credential Manager is currently available for Windows, macOS, and Linux*. GCM only works with HTTP(S) remotes; you can still use Git with SSH.
    Downloads: 11 This Week
    Last Update:
    See Project
  • 25
    Git Large File Storage

    Git Large File Storage

    Git extension for versioning large files

    An open source Git extension for versioning large files. Git Large File Storage (LFS) replaces large files such as audio samples, videos, datasets, and graphics with text pointers inside Git, while storing the file contents on a remote server like GitHub.com or GitHub Enterprise. Download and install the Git command line extension. Once downloaded and installed, set up Git LFS for your user account. In each Git repository where you want to use Git LFS, select the file types you'd like Git LFS to manage (or directly edit your .gitattributes). You can configure additional file extensions at any time. Host more in your Git repositories. External file storage makes it easy to keep your repository at a manageable size. Download less data. This means faster cloning and fetching from repositories that deal with large files. Work like you always do on Git, no need for additional commands, secondary storage systems, or toolsets.
    Downloads: 11 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next