Open Source Windows Version Control Software - Page 6

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 customers can spin up VMs, build with AI, and query data at no cost.

    Put your $300 in credit toward real workloads, then keep building with free monthly usage for 20+ products. No commitment and no charge until you upgrade.
    Start Free
  • 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
    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: 1 This Week
    Last Update:
    See Project
  • 2
    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
  • 3
    Octokit

    Octokit

    Ruby toolkit for the GitHub API

    API wrappers should reflect the idioms of the language in which they were written. Octokit.rb wraps the GitHub API in a flat API client that follows Ruby conventions and requires little knowledge of REST. Most methods have positional arguments for required input and an options hash for optional parameters, headers, or other options. While most methods return a Resource object or a Boolean, sometimes you may need access to the raw HTTP response headers. Access tokens can be revoked, removing access for only that token without having to change your password everywhere. Access tokens have access scopes that allow for more granular access to API resources. For instance, you can grant a third party access to your gists but not your private repositories. Two-Factor Authentication brings added security to the account by requiring more information to login.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 4
    PHP GitHub API

    PHP GitHub API

    A simple PHP GitHub API client, Object Oriented, tested and documented

    A simple PHP GitHub API client, Object Oriented, tested and documented. Uses GitHub API v3 & supports GitHub API v4. The object API (v3) is very similar to the RESTful API. Object Oriented wrapper for GitHub API, written with PHP. Light and fast thanks to lazy loading of API classes. Extensively tested and documented. We are decoupled from any HTTP messaging client with help by HTTPlug. To integrate this library in laravel Graham Campbell created graham-campbell/github. See the installation instructions to get started in laravel.
    Downloads: 1 This Week
    Last Update:
    See Project
  • Demo Series - Small Business Backup By Veeam Icon
    Demo Series - Small Business Backup By Veeam

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

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

    PyScaffold

    Python project template generator with batteries included

    PyScaffold is a project generator for bootstrapping high-quality Python packages, ready to be shared on PyPI and installable via pip. It is easy to use and encourages the adoption of the best tools and practices of the Python ecosystem, helping you and your team to stay sane, happy and productive. The best part? It is stable and has been used by thousands of developers for over half a decade! Checkout out this demo project, which was set up using PyScaffold and if you are still not convinced yet, also have a look at these reasons to use PyScaffold. After cd-ing into your new project and creating (or activating) an isolated development environment (with virtualenv, conda or your preferred tool), you can do the usual editable install. All configuration can be done in setup.cfg like changing the description, URL, classifiers, installation requirements and so on as defined by setuptools. That means in most cases it is not necessary to tamper with setup.py.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 6
    QtPass

    QtPass

    QtPass is a multi-platform GUI for pass, the standard unix password

    QtPass is part of the pass ecosystem. This means you are not stuck with QtPass, you can use the same password store with many clients. Password management should be simple and follow Unix philosophy. With pass, each password lives inside of a gpg encrypted file whose filename is the title of the website or resource that requires the password. These encrypted files may be organized into meaningful folder hierarchies, copied from computer to computer, and, in general, manipulated using standard command line file management utilities. Contrary to many Free, Libre and OpenSource password managers, pass and by extension QtPass are not bound to one user or device. Since we are based on GnuPG we have multi-key, multi recipient encryption out of the box. The use of external encryption devices like OpenPGP or x509/CMS based smartcards or USB tokens and per-folder ACL makes it easy to grant or take away privileges from users.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 7
    VFS for Git

    VFS for Git

    Virtual file system for Git, enable Git at enterprise scale

    The Virtual Filesystem for Git (formerly GVFS) is an open source system that enables Git to operate at enterprise-scale. It makes using and managing massive Git repositories possible. VFS for Git virtualizes the filesystem beneath your Git repository so that Git tools see what appears to be a normal repository when, in fact, the files are not actually present on disk. VFS for Git only downloads files as they are needed. VFS for Git also manages Git's internal state so that it only considers the files you have accessed, instead of having to examine every file in the repository. This ensures that operations like status and checkout are as fast as possible. Git struggles to handle enterprise-scale repositories. Operations like cloning will slow to a crawl when you have millions of files in a repository, and even something as simple as getting your repository status will leave you waiting.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 8
    Walle 2.0

    Walle 2.0

    Walle 2.0 web

    Support multi-project, multi-environment one-click deployment and online, one-click quick rollback. Online order application, review, deployment, and real-time operation logs. Permissions, notifications, file fingerprints. Independent space resources like gitlab. Custom environment, environment variables. Project administrator, a notification mechanism, custom hooks in each process. Get through server management, grayscale release. Advanced gitlab-like user management mode. Online order application, review, grayscale release, real-time websocket. Walle allows users to release code and finally can not only choose jenkins! Support various web code releases, release and rollback of php, java, python, go and other codes can be completed with one click through the web. walle is a freely configurable project, more user-friendly, high-value, an open source online deployment system that supports git, multi-user, multi-language, multi-project, and multi-environment simultaneous deployment.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 9
    Znap!

    Znap!

    Znap! Fast, easy-to-use tools for Zsh dotfiles & plugins

    Znap is a fast, light-weight set of tools to ease the use of Zsh plugins & Git repos and reduce your shell's startup time. Using Znap to manage your plugins can be as simple as putting this in your .zshrc file. Additionally, Znap makes it so that you actually need to have less in your .zshrc file, by automating several tasks for you. Note that the above example does not include any call to complist, compinit, or bashcompinit in the .zshrc file. That is because Znap will run these for you as needed. Znap compiles your scripts and functions in the background. This way, your shell will start up even faster next time! Znap automatically regenerates your comp dump file whenever you install or update a repo or change your .zshrc file. When using git 2.31.0 or newer, Znap automatically enables git maintenance in each repo that it manages. This automatically optimizes your repos in the background, so that your git and znap commands will run faster.
    Downloads: 1 This Week
    Last Update:
    See Project
  • AI-generated apps that pass security review Icon
    AI-generated apps that pass security review

    Stop waiting on engineering. Build production-ready internal tools with AI—on your company data, in your cloud.

    Retool lets you generate dashboards, admin panels, and workflows directly on your data. Type something like “Build me a revenue dashboard on my Stripe data” and get a working app with security, permissions, and compliance built in from day one. Whether on our cloud or self-hosted, create the internal software your team needs without compromising enterprise standards or control.
    Try Retool free
  • 10
    actions/github-script

    actions/github-script

    Write workflows scripting the GitHub API in JavaScript

    This action makes it easy to quickly write a script in your workflow that uses the GitHub API and the workflow run context. To use this action, provide an input named script that contains the body of an asynchronous function call. Since the script is just a function body, these values will already be defined, so you don't have to import them. All scripts are now run with Node 16 instead of Node 12 and are affected by any breaking changes between Node 12 and 16. By default, the JSON-encoded return value of the function is set as the "result" in the output of a github-script step. For some workflows, string encoding is preferred. This option can be set using the result-encoding input. By default, requests made with the github instance will not be retried. You can configure this with the retries option.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 11
    composer-git-hooks

    composer-git-hooks

    Easily manage git hooks in your composer config

    Manage git hooks easily in your composer configuration. This command line tool makes it easy to implement a consistent project-wide usage of git hooks. Specifying hooks in the composer file makes them available for every member of the project team. This provides a consistent environment and behavior for everyone which is great. It is also possible to use to manage git hooks globally for every repository on your computer. That way you have a reliable set of hooks crafted by yourself for every project you choose to work on. You can also install it globally. This feels much more natural when cghooks is used with the newly added support for managing global git hooks. When a hook is a sequence of commands, it can be useful to stop the execution when a command fails. Custom hooks can be added to the custom-hooks array of the `config section.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 12
    diff2html

    diff2html

    Pretty diff to html javascript library (diff2html)

    Each diff provides a comprehensive visualization of the code changes, helping developers identify problems and better understand the changes. Each diff features a line-by-line and side-by-side preview of your changes. All the code changes are syntax highlighted using highlight.js, providing more readability. Similar lines are paired, allowing for easier change tracking. We work hard to make sure you can have your diffs in a simple and flexible way. The AI community building the future. Build, train and deploy state of the art models powered by the reference open source in natural language processing. Wrapper and helper adding syntax highlight, synchronized scroll, and other nice features. You can use it without syntax highlight or by passing your own implementation with the languages you prefer. Diff2Html can be used in various ways as listed in the distributions section.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 13
    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
  • 14
    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: 1 This Week
    Last Update:
    See Project
  • 15
    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: 1 This Week
    Last Update:
    See Project
  • 16
    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: 1 This Week
    Last Update:
    See Project
  • 17
    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: 1 This Week
    Last Update:
    See Project
  • 18
    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: 1 This Week
    Last Update:
    See Project
  • 19
    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: 1 This Week
    Last Update:
    See Project
  • 20
    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: 1 This Week
    Last Update:
    See Project
  • 21
    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: 1 This Week
    Last Update:
    See Project
  • 22
    gitwatch

    gitwatch

    Watch a file or folder and automatically commit changes to a git repo

    A bash script to watch a file or folder and commit changes to a git repo. Some programs auto-write their config files, without waiting for you to click an 'Apply' button; or even if there is such a button, most programs offer you no way of going back to an earlier version of your settings. If you commit your config file(s) to a git repo, you can track changes and go back to older versions. This script makes it convenient, to have all changes recorded automatically. If you use an editor that does not have built-in git support (or maybe if you don't like the git support it has), you can use gitwatch to automatically commit your files when you save them, or combine it with the editor's auto-save feature to fully automatically and regularly track your changes. If you have any other uses, or can think of ones, please let us know, and we can add them to this list! gitwatch can be installed from source by simply cloning the repository and putting the shell script into your $PATH.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    joe

    joe

    A .gitignore magician in your command line

    A .gitignore magician in your command line. Joe generates .gitignore files from the command line for you. After install, make sure to run joe u. This will download all .gitignore files in ~/joe-data/ folder. Download the latest binary from the Releases page. It's the easiest way to get started with joe. Make sure to add the location of the binary to your $PATH. You can also use joe to append to a global .gitignore. These can be helpful when you want to ignore files generated by an IDE, OS, or otherwise. Joe isn't just a generator for .gitignore files. You can use it and its output wherever a SCM is used.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 24
    jupyterlab-git

    jupyterlab-git

    A Git extension for JupyterLab

    A JupyterLab extension for version control using Git. To see the extension in action, open the example notebook included in the Binder demo. Open the Git extension from the Git tab on the left panel. This extension tries to handle credentials for HTTP(S) connections (if you don't have set up a credential manager). But not for other SSH connections. The extension can cache temporarily (by default for an hour) credentials. To use the caching, you will need to check the option Save my login temporarily in the dialog asking your credentials. Once installed, extension behavior can be modified via the following settings which can be set in JupyterLab's advanced settings editor. Set post git init actions. It is possible to provide a list of commands to be executed in a folder after it is initialized as Git repository. Set path patterns to exclude from this extension. You can use wildcard and interrogation mark for respectively everything or any single character in the pattern.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 25
    logo-ls

    logo-ls

    Modern ls command with vscode like File Icon and Git Integrations

    Modern ls command with beautiful Icons and Git Integrations. Written in Golang. This project is built to add esthetics to ls (coreutiles) command. Language agnostic binaries. Git Status Integration. Supporting 600+ files, extensions, and directories. This project is highly inspired by ls(coreutiles) and color ls. The project tries to find a happy path between speed and aesthetics. All supported flags can be found by using help flag $ logo-ls -?. Almost all flags are same as that of the classic ls command and behave similarly. The project can be used as a drop-in replacement for the ls(coreutiles) Nerd fonts are required to display Icons on screen. Basically Nerd Fonts patches your current font i.e., the last few unicode points (approx 2,824 out of 143,859) in the font are replaced with nerdy icons. If you have Golang installed on your system then the logo-ls can be downloaded and installed using the the go cli tool provided by the language.
    Downloads: 1 This Week
    Last Update:
    See Project