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

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • 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
  • 1
    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: 34 This Week
    Last Update:
    See Project
  • 2
    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: 32 This Week
    Last Update:
    See Project
  • 3
    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: 25 This Week
    Last Update:
    See Project
  • 4
    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: 23 This Week
    Last Update:
    See Project
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 5
    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: 23 This Week
    Last Update:
    See Project
  • 6
    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: 20 This Week
    Last Update:
    See Project
  • 7
    LazyGit

    LazyGit

    Simple terminal UI for git commands

    You've heard it before, git is powerful, but what good is that power when everything is so damn hard to do? Interactive rebasing requires you to edit a goddamn TODO file in your editor? Are you kidding me? To stage part of a file you need to use a command-line program to step through each hunk and if a hunk can't be split down any further but contains code you don't want to stage, you have to edit an arcane patch file by hand? Are you KIDDING me?! Sometimes you get asked to stash your changes when switching branches only to realize that after you switch and unstash that there weren't even any conflicts and it would have been fine to just check out the branch directly? If you're a mere mortal like me and you're tired of hearing how powerful git is when in your daily life it's a powerful pain in your ass, lazygit might be for you.
    Downloads: 19 This Week
    Last Update:
    See Project
  • 8
    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: 15 This Week
    Last Update:
    See Project
  • 9
    GLab

    GLab

    The GitLab CLI tool

    GLab is an open source GitLab CLI tool bringing GitLab to your terminal next to where you are already working with git and your code without switching between windows and browser tabs. Work with issues, merge requests, watch running pipelines directly from your CLI among other features. Inspired by gh, the official GitHub CLI tool. glab is available for repositories hosted on GitLab.com and self-hosted GitLab Instances. glab supports multiple authenticated GitLab instances and automatically detects the authenticated hostname from the remotes available in the working git directory. Please take care when running scripts in this fashion. Consider peeking at the install script itself and verify that it works as intended. glab is available on the KISS Linux Community Repo as gitlab-glab. If you already have the community repo configured in your KISS_PATH you can install glab through your terminal.
    Downloads: 12 This Week
    Last Update:
    See Project
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 10
    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: 12 This Week
    Last Update:
    See Project
  • 11
    opam

    opam

    opam is a source-based package manager

    Opam is a source-based package manager for OCaml. It supports multiple simultaneous compiler installations, flexible package constraints, and a Git-friendly development workflow. Opam was created and is maintained by OCamlPro. To get started, checkout the Install and Usage guides. Run ./configure. If you don't have the dependencies installed, this will locally take care of all OCaml dependencies for you (downloading them, unless you used the inclusive archive we provide for each release). This is all you need for installing and using opam, but if you want to use the opam-lib (to work on opam-related tools), you need to link it to installed libraries. It's easier to already have a working opam installation in this case, so you can do it as a second step. If you install on your system (without changing the prefix), you will need to install as root (sudo). As sudo do not propagate environment variables, there wil be some errors.
    Downloads: 10 This Week
    Last Update:
    See Project
  • 12
    Git Interactive Rebase Tool

    Git Interactive Rebase Tool

    Native cross-platform full feature terminal-based sequence editor

    Native cross-platform full feature terminal-based sequence editor for interactive rebase in Git 1.7.8+. Built and works on Linux, macOS, Windows and many others. Easily set the action to pick, squash, fixup, edit, reword and drop. Reorder the action list with a single key press. Change action and reorder multiple lines at once with visual mode. View the commit overview, and a full commit diff with a press of a key. Easily edit the command that is run by an exec command. Need to do something in your Git editor? Quickly shell out to your editor, make a change and return to the tool. GitBash requires the use of winpty in order to work correctly. The tool has built-in help that can be accessed by using the ? key. Key bindings can be customized, see configuration for all key bindings and information on configuring.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 13
    Gogs

    Gogs

    A painless self-hosted Git service

    Gogs is a simple, stable, self-hosted Git service that is easy to install and setup. All you have to do is run the binary on any platform that Go supports: Linux, macOS and Windows. You may also install from source, from packages, or ship with Docker or Vagrant. Gogs is very lightweight with minimal hardware requirements, running on Raspberry Pi and even on NAS devices. Gogs offers plenty of great features, including various access repositories, repository and organization webhooks, repository Git hooks, repository management and so much more. It also offers software, service and product support for various areas such as project management (Kanboard, Taiga), DevOps (Fabric8) and team communication (BearyChat).
    Downloads: 7 This Week
    Last Update:
    See Project
  • 14
    Lefthook

    Lefthook

    Fast and powerful Git hooks manager for any type of projects

    Meet Lefthook, the fastest polyglot Git hooks manager out there, and make sure not a single line of unruly code makes it into production. See how easy it is to install Lefthook (recently adopted by Discourse, Logux, and Openstax) for most common frontend and backend environments and ensure all your team’s developers can rely on a single flexible tool. Also, it has emojis. Fast and powerful Git hooks manager for Node.js, Ruby or any other type of projects. Fast. It is written in Go. Can run commands in parallel. Powerful. It allows to control execution and files you pass to your commands. Simple. It is single dependency-free binary which can work in any environment. Lefthook is easy to use. Once you configure and setup you can forget that it even exists and rely on the magic underneath.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 15
    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: 6 This Week
    Last Update:
    See Project
  • 16
    WSLGit

    WSLGit

    Use Git installed in Bash on Windows/Windows Subsystem for Linux (WSL)

    This project provides a small executable that forwards all arguments to git running inside Bash on Windows/Windows Subsystem for Linux (WSL). Use Git installed in Bash on Windows/Windows Subsystem for Linux (WSL) from Windows and Visual Studio Code (VSCode) The primary reason for this tool is to make the Git plugin in Visual Studio Code (VSCode) work with the git command installed in WSL. For these two to interoperate, this tool translates paths between the Windows (C:\Foo\Bar) and Linux (/mnt/c/Foo/Bar) representations. The install.bat script creates a folder structure similar to the one used by Git For Windows, and creates some useful symbolic links in the wslgit\cmd and wslgit\bin folders. VSCode will find the git executable automatically if the two optional installation steps were taken.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 17
    Git Town

    Git Town

    Generic, high-level Git workflow support!

    Git Town adds Git commands that make software development more efficient by keeping Git branches better in sync with each other. This reduces merge conflicts and the number of Git commands you need to run. Git is a flexible source code management system. The Git CLI (correctly) supports all possible ways of using Git equally well. It provides basic commands out of which Git users can implement their particular Git workflows. This generic design can make using the Git CLI repetitive in real life. As the screencast above demonstrates, typical development activities like creating, synchronizing, or shipping a feature branch require running multiple, sometimes dozens of Git commands. Git Town adds a high-level layer of Git commands for these activities. These commands are compatible with most common branching models like GitHub Flow, Git Flow, GitLab Flow, trunk-based development and even committing straight into the main branch. See also this external review.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 18
    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: 5 This Week
    Last Update:
    See Project
  • 19
    asdf

    asdf

    Extendable version manager with support for Ruby, Node.js, Elixir, etc

    Manage multiple runtime versions with a single CLI tool. Manage each of your project runtimes with a single CLI tool and command interface. asdf is a CLI tool that can manage multiple language runtime versions on a per-project basis. It is like gvm, nvm, rbenv & pyenv (and more) all in one! Simply install your language's plugin! Large ecosystem of existing runtimes & tools. Simple API to add support for new tools as you need! Support for existing config files .nvmrc, .node-versions, .ruby-version for smooth migration! .tool-versions to manage all your tools, runtimes, and their versions in a single, sharable place. Supports Bash, ZSH, Fish & Elvish with completions available. Provides a GitHub Action to install and utilize your .tool-versions in your CI/CD workflows.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 20
    nbstripout

    nbstripout

    strip output from Jupyter and IPython notebooks

    Opens a notebook, strips its output, and writes the outputless version to the original file. Useful mainly as a git filter or pre-commit hook for users who don't want to track output in VCS. This does mostly the same thing as the Clear All Output command in the notebook UI. You can download and install the latest version of nbstripout from PyPI, the Python package index. Strip output from IPython / Jupyter / Zeppelin notebook (modifies the file in-place). Usually, nbstripout is installed per repository so you can choose where to use it or not. You can choose to set the attributes in .gitattributes and commit this file to your repository, however there is no way to have git set up the filters automatically when someone clones a repository. This is by design, to prevent you from executing arbitrary and potentially malicious code when cloning a repository.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 21
    ohmyposh.dev

    ohmyposh.dev

    A prompt theme engine for any shell

    Oh My Posh enables you to use the full-color set of your terminal by using colors to define and render the prompt. Easily adjust existing themes or create your own. From standard segments all the way to custom implementations. No matter which shell you're using, or even how many, you can carry the configuration from one shell and/or machine to another for the same prompt everywhere you work. What started as the offspring of oh-my-posh2 for PowerShell resulted in a cross platform, highly customizable and extensible prompt theme engine. After 4 years of working on oh-my-posh, a modern and more efficient tool was needed to suit my personal needs. When you look at prompts like Agnoster or Paradox, you notice they usually consist of a few building blocks which contain one or more segments that display some sort of information. The configuration of Oh My Posh works exactly like that. Blocks are a combination of one or more segments.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 22
    CPM.cmake

    CPM.cmake

    CMake's missing package manager

    CPM.cmake is a cross-platform CMake script that adds dependency management capabilities to CMake. It's built as a thin wrapper around CMake's FetchContent module that adds version control, caching, a simple API and more. Any downloadable project or resource can be added as a version-controlled dependency though CPM, it is not necessary to modify or package anything. Projects using modern CMake are automatically configured and their targets can be used immediately. For everything else, the targets can be created manually after the dependency has been downloaded. After CPM.cmake has been added to your project, the function CPMAddPackage can be used to fetch and configure a dependency. Afterwards, any targets defined in the dependency can be used directly. CPMAddPackage takes the following named parameters. The origin may be specified by a GIT_REPOSITORY, but other sources, such as direct URLs, are also supported.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 23
    Git Credential Manager for Windows

    Git Credential Manager for Windows

    Secure Git credential storage for Windows for Visual Studio

    Git Credential Manager for Windows is no longer being maintained. The cross-platform Git Credential Manager Core (GCM Core) is the official replacement. GCM Core is included as an optional component of Git for Windows 2.28 and will be made the default credential helper as of Git for Windows 2.29. GitHub will disable password-based authentication on APIs Git Credential Manager for Windows uses to create tokens. As a result, GCM for Windows will no longer be able to create new access tokens for GitHub. Git Credential Manager Core (GCM Core) supports OAuth-based authentication with GitHub and is the replacement for GCM for Windows. The Git Credential Manager for Windows (GCM) provides secure Git credential storage for Windows. It's the successor to the Windows Credential Store for Git (git-credential-winstore), which is no longer maintained. Compared to Git's built-in credential storage for Windows (wincred).
    Downloads: 4 This Week
    Last Update:
    See Project
  • 24
    Netlify CMS

    Netlify CMS

    A Git-based CMS for static site generators

    Open source content management for your Git workflow. Use Netlify CMS with any static site generator for a faster and more flexible web project. Get the speed, security, and scalability of a static site, while still providing a convenient editing interface for content. Content is stored in your Git repository alongside your code for easier versioning, multi-channel publishing, and the option to handle content updates directly in Git. Netlify CMS is built as a single-page React app. Create custom-styled previews, UI widgets, and editor plugins or add backends to support different Git platform APIs. Getting started is simple and free. Choose a template that’s pre-configured with a static site generator and deploys to a global CDN in one click. You get to implement modern front end tools to deliver a faster, safer, and more scalable site. Editors get a friendly UI and intuitive workflow that meets their content management requirements.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 25
    gtm

    gtm

    Simple, seamless, lightweight time tracking for Git

    Seamless time tracking for all your Git projects. GTM is automatic, seamless and lightweight. There is no need to remember to start and stop timers. It runs on occasion to capture activity triggered by your editor. The time metrics are stored locally with the git repository as Git notes and can be pushed to the remote repository. Simply install a plugin for your favorite editor and the GTM command line utility to start tracking your time now. When you are ready, commit your work like you usually do. GTM will automatically save the time spent associated with your commit. To check the time of the last commit type gtm report. GTM provides git aliases to make this easy. It defaults to origin for the remote repository. Time data can be retrieved from the remote repository by fetching.
    Downloads: 4 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • 5
  • Next