Open Source Windows Version Control Software - Page 4

Version Control Software for Windows

View 40 business solutions
  • Arryved POS System Icon
    Arryved POS System

    Drive contagious loyalty with your guests and staff with a POS and Brewery Management system that helps run your craft brewery better.

    Arryved was built to help craft beverage makers thrive.
    Learn More
  • Easily build robust connections between Salesforce and any platform Icon
    Easily build robust connections between Salesforce and any platform

    We help companies using Salesforce connect their data with a no-code Salesforce-native solution.

    Like having Postman inside Salesforce! Declarative Webhooks allows users to quickly and easily configure bi-directional integrations between Salesforce and external systems using a point-and-click interface. No coding is required, making it a fast and efficient and as a native solution, Declarative Webhooks seamlessly integrates with Salesforce platform features such as Flow, Process Builder, and Apex. You can also leverage the AI Integration Agent feature to automatically build your integration templates by providing it with links to API documentation.
    Learn More
  • 1
    gitstatus

    gitstatus

    Git status for Bash and Zsh prompt

    gitstatus is a 10x faster alternative to git status and git describe. Its primary use case is to enable fast git prompt in interactive shells. Heavy lifting is done by gitstatusd -- a custom binary written in C++. It comes with Zsh and Bash bindings for integration with shell. The easiest way to take advantage of gitstatus from Zsh is to use a theme that's already integrated with it. For example, Powerlevel10k is a flexible and fast theme with first-class gitstatus integration. If you install Powerlevel10k, you don't need to install gitstatus. This will give you a basic yet functional prompt with git status in it. It's over 10x faster than any alternative that can give you comparable prompt. In order to customize it, set PROMPT and/or RPROMPT at the end of ~/.zshrc after sourcing gitstatus.prompt.zsh. Insert ${GITSTATUS_PROMPT} where you want git status to go.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 2
    lint-staged

    lint-staged

    Run linters on git staged files

    Run linters against staged git files and don't let anything slip into your code base! Linting makes more sense when run before committing your code. By doing so you can ensure no errors go into the repository and enforce code style. But running a lint process on a whole project is slow, and linting results can be irrelevant. Ultimately you only want to lint files that will be committed. This project contains a script that will run arbitrary shell tasks with a list of staged files as an argument, filtered by a specified glob pattern. Linter commands work on a subset of all staged files, defined by a glob pattern. lint-staged uses micromatch for matching files. The concept of lint-staged is to run configured linter tasks (or other tasks) on files that are staged in git. lint-staged will always pass a list of all staged files to the task, and ignoring any files should be configured in the task itself.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 3
    A Windows Installer Database To XML Bi-Directional Converter. The command line tool msi2xml converts Windows Installer Databases (.msi) to text based XML files. The complementary tool xml2msi reconstructs the .msi from the XML file.
    Leader badge
    Downloads: 19 This Week
    Last Update:
    See Project
  • 4
    A portable Windows based distribution of SVN to take with you. Put it on a removable USB Flash Drive or TrueCrypt volume (maybe even both) then GO!
    Downloads: 15 This Week
    Last Update:
    See Project
  • Easy management of simple and complex projects Icon
    Easy management of simple and complex projects

    We help different businesses become digital, manage projects, teams, communicate effectively and control tasks online.

    Plan more projects with Worksection. Use Gantt chart and Kanban boards to organize your projects, get your team onboard and assign tasks and due dates.
    Learn More
  • 5
    Axion Release Plugin

    Axion Release Plugin

    Gradle release & version management plugin

    A Gradle plugin for automating semantic versioning in SCM-centric workflows: it computes version from Git tags, manages SNAPSHOT suffixes, performs tagging, and handles version bumps—streamlining release processes.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 6
    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: 1 This Week
    Last Update:
    See Project
  • 7
    FVM

    FVM

    Flutter Version Management: A simple CLI to manage Flutter SDK version

    FVM streamlines Flutter version management. It allows per project SDK versions, ensuring consistent app builds and easier testing of new releases, thereby boosting the efficiency of your Flutter project tasks.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 8
    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: 1 This Week
    Last Update:
    See Project
  • 9
    Git Blame Someone Else

    Git Blame Someone Else

    Blame someone else for your bad code

    git-blame-someone-else is a humorous Git utility created as a joke to let developers attribute problematic code to someone else. It modifies both the author and committer information of a commit, making it appear as though another contributor is responsible for the changes. While not intended for production repositories, it demonstrates how Git’s metadata can be manipulated for fun or demonstration purposes. The project highlights how easily commit authorship can be altered, serving as both a lighthearted tool and a reminder about the importance of trust in version control history. It’s written in shell script and is lightweight, requiring only Git and basic system tools to run. Despite being a novelty project, its popularity shows how developers appreciate humor injected into the programming ecosystem.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Complete Data Management for Nonprofits Icon
    Complete Data Management for Nonprofits

    Designed to fit with multi-level non-profit organization, across any sector

    NewOrg is a robust platform built with enhanced features to help non-profit organizations that capture and integrate the information from all of their operational areas to better manage volunteers, clients, programs, outcome reporting, activity sign-ups & scheduling, communications, surveys, fundraising activities and Development campaigns. NewOrg can truly deliver an intuitive product that will help manage your Committees, Donors, Events, and Memberships so that the organization runs efficiently.
    Learn More
  • 10
    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: 1 This Week
    Last Update:
    See Project
  • 11
    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: 1 This Week
    Last Update:
    See Project
  • 12
    Git-FTP

    Git-FTP

    Uses Git to upload only changed files to FTP servers

    If you use Git and you need to upload your files to an FTP server, Git-ftp can save you some time and bandwidth by uploading only those files that changed since the last upload. It keeps track of the uploaded files by storing the commit id in a log file on the server. It uses Git to determine which local files have changed. You can easily deploy another branch or go back in the Git history to upload an older version. git-ftp was not designed as centralized deployment tool. While a commit is being pushed and uploaded to the FTP server, all files belonging to that revision must remain untouched until git-ftp has successfully finished the upload. Otherwise, the contents of the uploaded file will not match the contents of the file referenced in the commit.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    GitButler

    GitButler

    The GitButler version control client, backed by Git

    GitButler is a modern Git-based version control client that pairs a graphical desktop experience with a complementary command-line tool, aiming to make everyday change management easier than traditional Git workflows. It keeps Git compatibility at the core, meaning your work still maps to commits, branches, and pushes to standard Git servers, but it rethinks how you interact with that underlying model. The project is designed around developer productivity, emphasizing smoother workflows for handling multiple streams of work, reviewing changes, and recovering from mistakes without the usual friction. It also positions itself for AI-assisted development patterns, where tooling needs to support rapid iteration and parallel work while staying understandable and reversible. By offering both GUI and CLI surfaces, it can fit into different team preferences, from visual-first change review to scriptable automation.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 14
    GitHub Pages Deploy Action

    GitHub Pages Deploy Action

    Automatically deploy your project to GitHub Pages using GitHub Actions

    Automatically deploy your project to GitHub Pages using GitHub Actions. This action can be configured to push your production-ready code into any branch you'd like. You can include the action in your workflow to trigger any event that GitHub actions supports. If the remote branch that you wish to deploy to doesn't already exist the action will create it for you. Your workflow will also need to include the actions/checkout step before this workflow runs in order for the deployment to work. If you intend to make multiple deployments in quick succession you may need to leverage the concurrency parameter in your workflow to prevent overlaps. The with portion of the workflow must be configured before the action will work. You can add these in the with section found in the examples above. Any secrets must be referenced using the bracket syntax and stored in the GitHub repository's Settings/Secrets menu.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    GitSavvy

    GitSavvy

    Full git and GitHub integration with Sublime Text

    Sublime Text plugin providing probably all git has to offer. Sublime Text 2 is not supported. Also, GitSavvy takes advantage of modern features of Sublime Text (like annotations). For the best experience, use the latest Sublime Text dev build. The documentation is probably outdated. Yeah it's sad but you can contribute and I will eventually get onto it but every special view has help available, just press ?. GitSavvy requires Git versions at or greater than 2.18.0. basic Git functionality; init, add, commit, amend, checkout, pull, push, etc. Rebasing just from that "Repo History". Edit a commit, reword a commit, autosquash commits, apply a fixup, whatever... the [r] menu. git diff view, allowing user to stage, unstage and reset (discard) files, hunks or individual lines. GitHub-style blame view, showing hunk metadata and ability to view the commit that made the change.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    Gitmal

    Gitmal

    A static page generator for repos

    Gitmal is a static page generator that turns the contents of a Git repository into a clean, navigable HTML website, making it easier to share or showcase code outside of traditional Git hosting platforms. It reads repository metadata including files, commits, branches, and markdown, and produces a fully static set of pages with syntax-highlighted code, commit history, branch lists, and rendered documentation, so viewers can explore projects as if browsing a lightweight curated site. Designed for simplicity and performance, gitmal can be run locally or via a Docker container, and works across repositories of any size, producing fully self-contained output ready to be deployed to static web hosts. It supports themes and custom styles, allowing creators to personalize the look and feel of the generated site. For developers who want to archive, document, or display their code in a non-interactive context, gitmal provides a straightforward and configurable solution.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 17
    Gradle Git Version

    Gradle Git Version

    A Gradle plugin that uses `git describe` to produce a version string

    This Gradle plugin derives your project’s version directly from the state of the Git repository, turning tags and commits into consistent semantic versions. It reads the most recent tag, the number of commits since that tag, and whether the working tree is dirty, then composes a deterministic version string. Teams can enforce patterns (for example, treating non-tagged builds as snapshots) and keep CI builds reproducible without hardcoding versions in build.gradle. The plugin integrates with Gradle’s project.version, so the computed version flows automatically into publishing, packaging, and artifact naming. It works well in branching workflows by incorporating branch or distance information, making debug artifacts easy to trace back to source. By centralizing version logic around Git history, it eliminates manual bumps and reduces mistakes when cutting releases across multiple modules.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 18
    Jujutsu

    Jujutsu

    A Git-compatible DVCS that is both simple and powerful

    Jujutsu (JJ VCS) is a modern, Git-compatible version control system designed to simplify and improve how developers manage code changes. It offers a clean and intuitive workflow that works well for both individual developers and large teams with complex histories. Jujutsu separates its user interface from its storage backend, allowing it to use Git repositories while rethinking the developer experience. The system treats the working copy as a real commit, removing the need for staging areas or stashes. Jujutsu records conflicts as first-class objects, making conflict resolution more flexible and reliable. It also maintains a complete operation log, allowing users to undo almost any action. Jujutsu aims to deliver powerful history rewriting and rebasing features without the complexity commonly associated with traditional tools.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    Nave

    Nave

    Virtual Environments for Node

    nave is a lightweight Node.js version manager that treats each Node installation as its own “virtual environment,” including a separate global npm space. You can install specific versions (or tip builds), create named environments, and switch between them with a single command. By default it launches a subshell, so exiting the environment is as simple as exit or Ctrl-D, and you don’t have to modify your shell startup files to get going. This approach makes it straightforward to test projects against multiple Node versions or keep legacy and modern toolchains side by side. Because environment state is scoped, global packages won’t collide across projects, reducing “works on my machine” surprises. Its minimalist design prioritizes speed and clarity over a large command surface, making nave a good fit for developers who want Node versioning without extra ceremony.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    PicX

    PicX

    GitHub API

    An image bed management tool with CDN acceleration function developed based on GitHub API. No need to download and install, use it online on the web page! free! Stablize! Convenient! Extremely fast! Writing articles with static blogs such as Hexo, VuePress, Hugo, etc., I don’t know where to save the pictures. Deliberately spending money to rent a cloud server to host pictures, it is too expensive and not worth it, and the upload configuration is cumbersome. The link to the favorite picture copied from the Internet will become invalid one day after using it. Using other paid image beds, the speed is slow, the capacity is small, and the time and flow are limited. Looking for a picture bed that is really free, stable, unlimited in capacity, and fast in access speed. So, come and try the PicX picture bed , it is specially made for technical bloggers, whoever uses it will know. Support one- click copying of external links of pictures and one- click conversion of Markdown format.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    Soft Serve

    Soft Serve

    A tasty, self-hostable Git server for the command line

    A tasty, self-hostable Git server for the command line. Configure with git. Create repos on demand with git push. Browse repos, files and commits with an SSH-accessible TUI. TUI mouse support. Print files over SSH with or without syntax highlighting and line numbers. Easy access control. Allow/disallow anonymous access. Add collaborators with SSH public keys. Repos can be public or private. You can also download a binary from the releases page. Packages are available in Alpine, Debian, and RPM formats. Binaries are available for Linux, macOS, and Windows. Soft Serve SSH CLI has the ability to print files and list directories, perform git operations on remote repos, and reload the configuration when necessary. Both git and reload commands need admin access to the server to work. So make sure you have added your key as an admin user, or you’re using anon-access: admin-access in the configuration.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    commitlint

    commitlint

    Lint commit messages

    commitlint checks if your commit messages meet the conventional commit format. commitlint helps your team adhere to a commit convention. By supporting npm-installed configurations it makes sharing of commit conventions easy. We're not a sponsored OSS project. Therefore we can't promise that we will release patch versions for older releases in a timely manner. If you are stuck on an older version and need a security patch we're happy if you can provide a PR. If something in between fails (like a new packages was added and needs to be published for the first time but you forgot) you can use lerna publish from-package to publish anythign that has not been published yet. We identify ease of adoption and developer experience as fields where there is room and need for improvement. The items on the roadmap should enhance commitlint regarding those aspects.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    forgit

    forgit

    A utility tool powered by fzf for using git interactively

    This tool is designed to help you use git more efficiently. It's lightweight and easy to use. Fig adds apps, shortcuts, and autocomplete to your existing terminal. Options can be set via environment variables. They have to be exported in order to be recognized by forgit. You can use forgit as a subcommand of git by making git-forgit available in $PATH. Forgit will use the default configured pager from git (core.pager, pager.show, pager.diff) but can be altered with several environment variables. You can add default fzf options for forgit, including keybinds, layout, etc. (No need to repeat the options already defined.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    git-secret

    git-secret

    A bash-tool to store your private data inside a git repository

    There’s a well-known issue with deploying and configuring software on servers: generally, you have to store your private data (such as database passwords, application secret-keys, OAuth secret keys, etc) outside of the git repository. If you do choose to store these secrets unencrypted in your git repo, even if the repository is private, it is a security risk to copy the secrets everywhere you check out your repo. These files are not version controlled. Filenames, locations, and passwords change from time to time, or new information appears, and other information is removed. When secrets are stored separately from your repo, you can not tell for sure which version of the configuration file was used with each commit or deploy. When building the automated deployment system there will be one extra step: download and place these secret-configuration files where they need to be. This also means you have to maintain extra secure servers where all your secrets are stored.
    Downloads: 1 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: 1 This Week
    Last Update:
    See Project
MongoDB Logo MongoDB