Open Source Windows Version Control Software - Page 29

Version Control Software for Windows

View 41 business solutions
  • $300 Free Credits to Build on Google Cloud Icon
    $300 Free Credits to Build on Google Cloud

    New to Google Cloud? Get $300 in credits to explore Compute Engine, BigQuery, Cloud Run, Gemini Enterprise Agent Platform, and more.

    Start your next project with $300 in free Google Cloud credit. Spin up VMs, run containers, query petabytes in BigQuery, or build agents with Gemini Enterprise Agent Platform. Once your credits are used, keep building with 20+ always-free tier products including Compute Engine, Cloud Storage, GKE, and Cloud Run functions. No commitment required—just sign up and start building.
    Claim $300 Free
  • Cut Data Warehouse Costs by 54% Icon
    Cut Data Warehouse Costs by 54%

    Easily migrate from Snowflake, Redshift, or Databricks with free tools.

    BigQuery delivers 54% lower TCO with exabyte scale and flexible pricing. Free migration tools handle the SQL translation automatically.
    Try Free
  • 1
    ghooks

    ghooks

    Simple git hooks

    Simple git hooks. It is not advised to install ghooks as a production dependency, as it will install git hooks in your production environment as well. Please install it under the devDependencies section of your package.json. Please also note, that it is absolutely not advised to install ghooks globally. To work as expected, make it a development dependency of your project(s). Add a config.ghooks entry in your package.json and simply specify which git hooks you want and their corresponding commands. The hooks' working directory is relative to the git root (where you have your .git directory). This means that if your package.json is in a subdirectory of your git repository, you'll need to cd into the directory before running any npm scripts.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 2
    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: 0 This Week
    Last Update:
    See Project
  • 3
    git push no-mistakes

    git push no-mistakes

    git push no-mistakes

    git push no-mistakes is a Git workflow tool that places a local validation gate in front of a real remote repository. Instead of pushing directly to origin, the user pushes to a no-mistakes remote. The tool creates a disposable worktree, runs an AI-driven validation pipeline, and only forwards the branch after every check passes. Its pipeline can review, test, check documentation, run linting, push the branch, open a pull request, watch CI, and apply safe automatic fixes. It supports coding agents such as Claude, Codex, Rovo Dev, OpenCode, Pi, and ACP-based targets through acpx. Overall, it helps developers create cleaner pull requests while keeping the human in control of approvals and judgment calls.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 4
    git-auto-commit Action

    git-auto-commit Action

    Automatically Commit changed Files back to GitHub

    Automatically Commit changed Files back to GitHub with GitHub Actions for the 80% use case. A GitHub Action to detect changed files during a Workflow run and to commit and push them back to the GitHub repository. By default, the commit is made in the name of "GitHub Actions" and co-authored by the user that made the last commit. Note that the Action has to be used in a Job that runs on a UNIX system (e.g. ubuntu-latest). If you don't use the default permission of the GITHUB_TOKEN, give the Job or Workflow at least the contents: write permission. The goal of this Action is to be "the Action for committing files for the 80% use case". Therefore, you might run into issues if your Workflow falls into the not supported 20% portion. If your Workflow can't push the commit to the repository because of authentication issues, please update your Workflow configuration.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Save Up to 91% on Cloud Compute With Spot VMs Icon
    Save Up to 91% on Cloud Compute With Spot VMs

    Automatic sustained-use discounts. One free VM per month. No negotiation needed.

    Run batch jobs at 60-91% off with Spot VMs. Long-running workloads get automatic discounts with sustained use.
    Try Free
  • 5
    git-cal

    git-cal

    github like contributions calendar on terminal

    git-cal generates a terminal-friendly contribution calendar for your Git activity, echoing the familiar heatmap seen on hosting sites but rendered in plain text. It scans your repositories’ commit history and aggregates changes per day, then prints a compact grid that highlights streaks and quieter periods. The output works in standard shells, making it handy for dashboards, status emails, or a lightweight snapshot of productivity without opening a browser. Options typically let you choose time ranges, color intensity (where terminals support it), and which repositories to include. Because it reads local Git metadata, it respects your privacy and can include private work you don’t push to public remotes. For developers who like quick visual feedback in the CLI, git-cal turns raw commit timestamps into an at-a-glance activity portrait.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 6
    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: 0 This Week
    Last Update:
    See Project
  • 7
    git-cola

    git-cola

    git-cola: The highly caffeinated Git GUI

    Git Cola is a sleek and powerful graphical user interface for Git. Git Cola is free software and written in Python (v2 + v3). Git Cola uses QtPy, so you can choose between PyQt6, PyQt5 and PySide2 by setting the QT_API environment variable to pyqt6, pyqt5 or pyside2 as desired. qtpy defaults to pyqt6 and falls back to pyqt6 and pyside2 if pyqt5 is not installed. Git Cola enables additional features when the following Python modules are installed. send2trash enables cross-platform "Send to Trash" functionality. Never run pip install or make install as root or outside of a Python virtualenv! If you don't have PyQt installed then the easiest way to get it is to use a Python virtualenv and install Git Cola into it in "editable" mode. This install method lets you upgrade Git Cola by running git pull.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 8
    git-cz

    git-cz

    Semantic Git commits

    git-cz is a command-line tool designed to guide developers in writing structured, conventional commits. Rather than manually typing commit messages, this tool prompts you to select commit types, scopes, and write descriptions according to a defined format. It integrates with the popular commitizen ecosystem so that when you run npx git-cz or similar, you are prompted through a workflow instead of free-form message. The project emphasises consistency and readability in commit history, helping teams enforce semantic or conventional commit message formats. It supports custom configuration (for example via a changelog.config.js file) so you can adapt the prompts or types to your project’s conventions. Because it is open source (licensed under Unlicense) it can be freely integrated within CI pipelines or commit hooks to standardise message formats.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 9
    git-imerge

    git-imerge

    Incremental merge for git

    Perform a merge between two branches incrementally. If conflicts are encountered, figure out exactly which pairs of commits conflict, and present the user with one pairwise conflict at a time for resolution. Reduce the pain of resolving merge conflicts to its unavoidable minimum, by finding and presenting the smallest possible conflicts: those between the changes introduced by one commit from each branch. Allow a merge to be saved, tested, interrupted, published, and collaborated on while it is in progress. Multiple incremental merges can be in progress at the same time. Each incremental merge has a name, and its progress is recorded in the Git repository as references under refs/imerge/NAME. The current state of an incremental merge can be visualized using the diagram command. An incremental merge can be interrupted and resumed arbitrarily, or even pushed to a server to allow somebody else to work on it.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 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
  • 10
    git-messenger.vim

    git-messenger.vim

    Vim and Neovim plugin to reveal the commit messages

    git-messenger.vim is a Vim and Neovim plugin that quickly reveals the Git commit message behind the line under the cursor. It helps developers understand why a line was added or changed without leaving the editor. The plugin shows the latest related commit in a popup window, floating window, or preview window depending on the editor version. If the most recent commit is not enough, users can explore older commits from the same interface. It can also show the diff for a selected commit, including options for unified and word diffs. This makes it useful when reading unfamiliar code, reviewing history, or debugging changes with context from version control.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 11
    git-notify

    git-notify

    Communicate important updates to your team via git commit messages

    Communicate important updates to your team via git commit messages. Sometimes you need to communicate changes to other developers on your project. In a small team, a Slack message works okay, but in larger teams and distributed organizations (such as open-source projects), reaching everyone can be a pain. git-notify allows you to embed announcements into your git commit messages. And display them to another developer on a machine, far far away. Just add "git-notify:" to your git commit message, and anything that follows will be displayed when another developer pulls that commit, or switches from a branch that does not contain that commit to one that does. If you're using a merge or squash commit strategy on GitHub, you can also add them to the extended commit message when landing a PR. git-notify will display a message for every "git-notify:" prefix it finds in the commit log that was just pulled/merged/rebased/checked out.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 12
    git-open

    git-open

    Type `git open` to open the GitHub page or website for a repository

    Type git open to open the repo website (GitHub, GitLab, Bitbucket) in your browser. git open works with these hosted repo providers, git open --issue currently only works with GitHub, Visual Studio Team Services and Team Foundation Server. The preferred way of installation is to simply add the git-open script somewhere into your path (e.g. add the directory to your PATH environment or copy git-open into an existing included path like /usr/local/bin). Antigen will handle cloning the plugin for you automatically the next time you start zsh, and periodically checking for updates to the git repository. You can also add the plugin to a running zsh with antigen bundle paulirish/git-open for testing before adding it to your .zshrc. Add zgen load paulirish/git-open to your .zshrc file in the same function you're doing your other zgen load calls in. ZGen will take care of cloning the repository the next time you run zgen save, and will also periodically check for updates to the git repository.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 13
    git-peek

    git-peek

    git repo to local editor instantly

    git peek is the fastest way to open a remote git repository in your local text editor. Use it when you want to browse or search other people's code with your own editor. Pass git peek a git repository or a github link, and it will quickly fetch and open it in your local editor. It stores the repository in a temporary directory and deletes it when you close the editor or git peek. If you don't pass git peek input, it will let you search Github repositories and show trending repositories. If you paste a link to a file on GitHub, it will quickly open the file in your local editor. If you pass it a GitHub repository, it fetches a tarball instead of using git and decompresses it while downloading it (streaming). From unscientific benchmarks, this is about 2x faster than cloning. While downloading & decompressing the tarball, it also downloads the specific file linked to (or the README.md) via JSDelivr's CDN.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 14
    git-recall

    git-recall

    An interactive way to peruse your git history from the terminal

    An interactive way to peruse your git history from the terminal. git-recall is a simple tool that allows you to easily go through your commits and check what you or other contributors in your team did. It doesn't aim to be a replacement for the git log command, but just to be a convenient way to recall what you've done from your terminal. You can install it by simply copying the git-recall script into any existing path (e.g. /usr/local/bin) or create your own directory and add it to the PATH variable. Once the commits are displayed, you can use either the arrow keys or j/k to switch between commits, press TAB or e to expand/reduce the commit's diff or q to quit.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 15
    git-reflow

    git-reflow

    Reflow automatically creates pull requests

    Reflow automatically creates pull requests, ensures the code review is approved, and squash merges finished branches to master with a great commit message template. Enforce code reviews across your team. Know that your entire team delivers code the same way. Reduce the knowledge needed to deliver great code. Have a commit history that's clean and actually usable. Revert features with ease (if needed). Work with diverse teams with less worry about different processes. Stop searching for other git workflows. Reflow covers 90% of your needs without junk you'll never use. Git-reflow's default process isn't meant to fit every team, which is why we've introduced Custom Workflows. With a custom workflow, you can add hooks to be run before, or after any command. Use one of our pre-configured workflows as a basis for your own.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    git-reports

    git-reports

    Report git generator

    Report generator log commits to the version control system git. Help me make it better with issues
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    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: 0 This Week
    Last Update:
    See Project
  • 18
    git-secrets

    git-secrets

    Prevents you from committing secrets and credentials into git

    git-secrets is a Git extension that helps prevent secrets—API keys, credentials, tokens, private keys—from being accidentally committed into version control. It works by applying configurable regular-expression patterns over commit contents (and merge history) and rejecting commits or merges that violate the policy. The tool includes hooks that integrate into git commit and git merge, as well as commands to list, add, or remove secret patterns, and to scan existing history for leaks. Teams often deploy it as part of their developer toolchain to enforce a security guardrail: you catch leaks early rather than discovering them later. It is also often used in CI pipelines or continuous code quality checks to detect in-flight vulnerabilities. While git-secrets is not a full secrets management system, it plays a key role in defense-in-depth by preventing accidental exposure in source.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    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: 0 This Week
    Last Update:
    See Project
  • 20
    git-sketch-plugin

    git-sketch-plugin

    A Git client generating pretty diffs built right into Sketch

    A Git client generating pretty diffs built right into Sketch. A Git client built right into Sketch. The plugin really improves the review process by exporting an image for every part of the design. Every member of the team can quickly see what the next iteration will change through Github’s interface. Each step of the design process is now documented. Newcomers are able to understand how we ended up with the current iteration and why we went with some options and not others. Create a new branch when you start working on a new feature. Work normally on your design. Save the file. Commit the changes with a meaningful message describing them. The plugin will extract the artboards in your file in order to show the differences easily. Push your changes to the remote. Create a pull request from your branch to the master branch. Voila. Your co-workers can review the changes, comment on them and approve them. Once approved, merge the pull request.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    git-toolbelt

    git-toolbelt

    A suite of useful Git commands that aid with scripting

    git-toolbelt is a collection of practical Git helper commands for daily command-line work and scripting. It adds small utilities that simplify common repository tasks that are possible with Git but annoying to type repeatedly. The project includes commands for creating WIP savepoint commits, listing modified files, updating many repositories, and inspecting local or remote branch state. It is designed for developers who already use Git heavily and want a faster workflow around repetitive operations. The tools are intentionally lightweight and shell-friendly, so they fit naturally into terminal aliases, scripts, and editor integrations. Its main value is turning frequent Git chores into short, readable commands.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    A full featured easy-to-use Git source code management plug-in for Eclipse.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Allows to transparently encrypt repository contents with AES 256. The main advantage is that no additional software needed to be installed in untrusted location. Files are automatically encrypted on the fly when doing git push from trusted location.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    gitfs

    gitfs

    Version controlled file system

    gitfs is a FUSE file system that fully integrates with git. You can mount a remote repository's branch locally, and any subsequent changes made to the files will be automatically committed to the remote. gitfs was developed by the awesome engineering team at Presslabs, a Managed WordPress Hosting provider. gitfs was designed to bring the full powers of git to everyone, no matter how little they know about versioning. A user can mount any repository and all their changes will be automatically converted into commits. gitfs will also expose the history of the branch you're currently working on by simulating snapshots of every commit. gitfs is useful in places where you want to keep track of all your files, but at the same time you don't have the possibility of organizing everything into commits yourself. A FUSE filesystem for git repositories, with local cache. We provide packages for the major Ubuntu releases and MacOS.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    github-changelog-generator

    github-changelog-generator

    Automatically generate change log from your tags, issues, labels, etc.

    Automatically generate change log from your tags, issues, labels and pull requests on GitHub. Fully automated changelog generation - This gem generates a changelog file based on tags, issues and merged pull requests (and splits them into separate lists according to labels) from octocat: GitHub. What’s the point of a changelog? To make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project. Why should I care? Because software tools are for people. "Changelogs make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project." Using Docker is an alternative to installing Ruby and the gem.
    Downloads: 0 This Week
    Last Update:
    See Project
Monday.com Logo