Go Version Control Software

View 74 business solutions

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

  • Passwordless Authentication and Passwordless Security Icon
    Passwordless Authentication and Passwordless Security

    Identity is everything. Protect it with Duo.

    It’s no secret — passwords can be a real headache, both for the people who use them and the people who manage them. Over time, we’ve created hundreds of passwords, it’s easy to lose track of them and they’re easily compromised. Fortunately, passwordless authentication is becoming a feasible reality for many businesses. Duo can help you get there.
    Get a Free Trial
  • Build Securely on Azure with Proven Frameworks Icon
    Build Securely on Azure 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
  • 1
    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: 26 This Week
    Last Update:
    See Project
  • 2
    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: 23 This Week
    Last Update:
    See Project
  • 3
    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
  • 4
    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: 9 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
  • 5
    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: 6 This Week
    Last Update:
    See Project
  • 6
    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: 5 This Week
    Last Update:
    See Project
  • 7
    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: 4 This Week
    Last Update:
    See Project
  • 8
    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: 4 This Week
    Last Update:
    See Project
  • 9
    Coca

    Coca

    Coca is a toolbox which is design for legacy system refactoring

    Coca is a toolbox that is design for legacy system refactoring and analysis, including call graph, concept analysis, api tree, and design patterns suggestions. Requirements: graphviz for dot file to image (such as svg, png). The easiest way to get coca is to use one of the pre-built release binaries which are available for OSX, Linux, and Windows on the release page.
    Downloads: 3 This Week
    Last Update:
    See Project
  • Our Free Plans just got better! | Auth0 by Okta Icon
    Our Free Plans just got better! | Auth0 by Okta

    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 secuirty. Auth0 now, thank yourself later.
    Try free now
  • 10
    git-sizer

    git-sizer

    Compute various size metrics for a Git repository

    git-sizer computes various size metrics for a local Git repository, flagging those that might cause you problems or inconvenience. Is the repository too big overall? Ideally, Git repositories should be under 1 GiB, and (without special handling) they start to get unwieldy over 5 GiB. Big repositories take a long time to clone and repack, and take a lot of disk space. Avoid storing generated files (e.g., compiler output, JAR files) in Git. It would be better to regenerate them when necessary, or store them in a package registry or even a fileserver. Avoid storing large media assets in Git. You might want to look into Git-LFS or git-annex, which allow you to version your media assets in Git while actually storing them outside of your repository. Avoid storing file archives (e.g., ZIP files, tarballs) in Git, especially if compressed. Different versions of such files don't delta well against each other, so Git can't store them efficiently.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 11
    gitjacker

    gitjacker

    Leak git repositories from misconfigured websites

    Leak git repositories from misconfigured websites. Gitjacker downloads git repositories and extracts their contents from sites where the .git directory has been mistakenly uploaded. It will still manage to recover a significant portion of a repository even where directory listings are disabled. For educational/penetration testing use only. You will need to have git installed to use Gitjacker.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 12
    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: 2 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: 2 This Week
    Last Update:
    See Project
  • 14
    git-chglog

    git-chglog

    CHANGELOG generator implemented in Go (Golang)

    Package chglog implements the main logic for the CHANGELOG generate. git-chglog internally uses the git command to get data to include in the CHANGELOG. The basic steps are as follows. Get all the tags. Get the commits contained between tagA and tagB. Execute all tags corresponding to the tag query that was specified in Steps 1 and 2. The compiled docker images are maintained on quay.io. git-chglog requires configuration files and templates to generate a CHANGELOG. However, it is a waste of time to create configuration files and templates from scratch. Therefore we recommend using the --init option which will create them interactively. CHANGELOG style. Automatic linking of issues and notices, initial value setting such as merges etc. are done automatically. Metadata for CHANGELOG. Depending on Style, it is sometimes used in processing, so it is recommended to specify it.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 15
    gitbase

    gitbase

    SQL interface to git repositories, written in Go.

    gitbase, is a SQL database interface to Git repositories. This project is now part of source{d} Community Edition, which provides the simplest way to get started with a single command. It can be used to perform SQL queries about the Git history and about the Universal AST of the code itself. gitbase is being built to work on top of any number of git repositories. gitbase implements the MySQL wire protocol, it can be accessed using any MySQL client or library from any language. The project is currently in alpha stage, meaning it's still lacking performance in a number of cases but we are working hard on getting a performant system able to process thousands of repositories in a single node. Stay tuned! gitbase was born to ease the analysis of git repositories and their source code. Also, making it MySQL compatible, we provide the maximum compatibility between languages and existing tools.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    Gitkube

    Gitkube

    Build and deploy docker images to Kubernetes using git push

    Gitkube is a tool for building and deploying Docker images on Kubernetes using git push. After a simple initial setup, users can simply keep git push-ing their repos to build and deploy to Kubernetes automatically. Ideal for development where you can push your WIP branch to the cluster to test. Reference implementation for writing git-based automation on your server. Fork this repo and create your own CRD + controller + git remote hook that can do things on the Kubernetes cluster. No dependencies except native tooling (git, kubectl). Plug and play installation. Simple public key-based authentication. RBAC ready - Control access to git remotes using RBAC. Support for namespace-based multi-tenancy - Remotes can only deploy to their own namespace. No assumptions about the repository structure.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    Terraform

    Terraform

    Safely and predictably create, change, and improve infrastructure

    Terraform is an open source tool that allows you to use infrastructure as code to provision and manage any cloud, infrastructure or service. It codifies APIs into declarative configuration files, which can then be shared among team members, reviewed, applied, edited and versioned.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    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: 1 This Week
    Last Update:
    See Project
  • 19
    Captain

    Captain

    Convert your Git workflow to Docker containers

    Captain - Convert your Git workflow to Docker containers ready for Continuous Delivery. Define your workflow in the captain.yaml and use captain to your Continuous Delivery service to create containers for each commit, test them and push them to your registry only when tests passes. Use captain build to build your Dockerfile(s) of your repository. If your repository has local changes the containers will only be tagged as latest, otherwise the containers will be tagged as latest, COMMIT_ID & BRANCH_NAME. Now your Git commit tree is reproduced in your local docker repository. Use captain test to run your tests. Use captain push to send selected images to the remote repository. From the other side, you can now pull the feature branch you want to test, or create distribution channels (such as 'alpha', 'beta', 'stable') using git tags that are propagated to container tags. Captain will automatically configure itself with sane values without the need for any pre-configuration.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    Fast git handover with mob

    Fast git handover with mob

    Tool for smooth git handover

    Fast git handover for remote pair/mob programming. Switch to a separate branch with mob start and handover to the next person with mob next. Repeat. When you're done, get your changes into the staging area of the main branch with mob done and commit them. The perfect git handover is quick, requires no talking, and allows the rest of the team to continue discussing how to best solve the current problem undisturbed by the handover. mob is a thin wrapper around git. mob provides only a few environment variables for configuration. mob only uses the Go standard library and no 3rd party plugins. mob provides a copy'n'paste solution if it encounters an error. mob requires the user to do changes in non-wip branches. mob owns its wip branches. It will create wip branches, make commits, push them, but also delete them.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Fix All Conflicts

    Fix All Conflicts

    Easy-to-use CUI for fixing git conflicts

    I never really liked any of the mergetools out there so I made a program that is somewhat easier to use.fac operates much like git add -p . It has a prompt input at the bottom of the screen where the user inputs various commands. The above key-bindings and various behaviors can be altered by creating a .fac.yml file in your home directory. Please refer to the configuration README.md for more information.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    GRV

    GRV

    GRV is a terminal interface for viewing git repositories

    GRV is a terminal-based interface for viewing Git repositories. It allows refs, commits and diffs to be viewed, searched and filtered. The behavior and style can be customized through configuration. A query language can be used to filter refs and commits, see the Documentation section for more information. Commits and refs can be filtered using a query language. Changes to the repository are captured by monitoring the filesystem allowing the UI to be updated automatically. Organized as tabs and splits. Custom tabs and splits can be created using any combination of views. Vi like keybindings by default, key bindings can be customized. Custom themes can be created. Mouse support. Commit Graph.grv is currently an alias used by oh-my-zsh. Add unalias grv to the end of your .zshrc to invoke GRV.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Git Subtree Splitter

    Git Subtree Splitter

    Split a repository to read-only standalone repositories

    Split a repository to read-only standalone repositories. splitsh-lite replaces the subtree split Git built-in command to make splitting a monolithic repository to read-only standalone repositories easy and fast. Both strategies work well and both have drawbacks as well. splitsh helps use both strategies by providing tools that automatically synchronize a monolithic repository to standalone repositories in real-time. splitsh-lite is a sub-project that provides a faster implementation of the git subtree split command, which helps create standalone repositories for one or more sub-directories of a main repository. If you want to learn more about monorepo vs manyrepos, watch this 4-minute lightning talk I gave at dotScale (or read the slides)... or watch the longer version from DrupalCon. "The Monorepo - Storing your source code has never been so much fun" is also a great resource.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    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: 0 This Week
    Last Update:
    See Project
  • 25
    Gitql

    Gitql

    A git query language

    Gitql is a Git query language. You can access the releases page and just grab the binary. If you want to compile itself just run go build. Gitql binary uses the embed file version.txt to outputs the gitql version command. On every release, the file content is replaced by the correct tag or git commit sha.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.