Darcs - Distributed Revision Control in Haskell

  •        2299

Darcs is a distributed advanced revision control system written in Haskell. It is similar to Git, Mercurial and Bazaar. User will have own personnel repository and commits his changes to it. Later the changes are pushed to the centralized repository. Every repository is a branch and it provides support to integrate the changes between them. It provides support to send the changes by email.

The fundamental difference is that Git, Mercurial and Bazaar maintains a chronological order in the changes of the repository. Darcs manipulates patches instead of chronological revisions, so darcs maintains a more fine-grained order on changes, that could be called patches dependencies.

http://darcs.net

Tags
Implementation
License
Platform

   




Related Projects

Git

  •    C

Git is a free & open source, distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

Mercurial

  •    Python

Mercurial is fast and powerful. Mercurial offers you the power and speed to efficiently handle projects of any size and kind. Every clone contains the whole project history, so committing, branching, tagging and merging are local operations which makes them fast and convenient. You can use a multitude of workflows and easily enhance its functionality with extensions.

Fossil

  •    C

Fossil is a distributed version control like Git and Mercurial. Fossil also supports distributed bug tracking and distributed wiki all in a single integrated package. It is simple, high-reliability, distributed software configuration management.

Monotone

  •    C++

Monotone is a free distributed version control system. It provides a simple, single-file transactional version store, with fully disconnected operation and an efficient peer-to-peer synchronization protocol. It understands history-sensitive merging, lightweight branches, integrated code review and 3rd party testing. It uses cryptographic version naming and client-side RSA certificates.

RHodeCode - Centralized control for distributed repositories

  •    Python

RhodeCode is an open source repository management platform. It provides unified security and team collaboration across Git, Subversion, and Mercurial. Pick the repository type depending on your project, not on your code management tool. Read and write in all repository types from one central point, and see commits, forks, and changeset merges at a glance. Its features include Intuitive System Management, Full text search, Access Management, Change log etc.


CVS

  •    C

CVS is a version control system, an important component of Source Configuration Management (SCM). Using it, you can record the history of sources files, and documents. CVS is a production quality system in wide use around the world, including many free software projects.

OpenCVS

  •    C

OpenCVS is a FREE implementation of the Concurrent Versions System, the most popular open source revision control software. It can be used as both client and server for repositories and provides granular access control over data stored in the repository. It aims to be as compatible as possible with other CVS implementations, except when particular features reduce the overall security of the system.

vim-signify - :heavy_plus_sign: Show a diff using Vim its sign column.

  •    Vim

Signify (or just Sy) uses the sign column to indicate added, modified and removed lines in a file that is managed by a version control system (VCS). If git is the only version control system you use, I suggest having a look at vim-gitgutter.

EclipseDarcs

  •    Java

This project develops an integration of the distributed revision control system Darcs (http://darcs.net) into the Eclipse IDE (http://eclipse.org). It provides a set of plugins that enable IDE users to manage the code under development in Darcs repositor

Subversion

  •    C

Subversion is an open source version control system. Founded in 2000 by CollabNet, Inc., the Subversion project and software have seen incredible success over the past decade. The open source community has used Subversion widely: for example in projects such as Apache Software Foundation, Free Pascal, FreeBSD, GCC, Django, Ruby, Mono, SourceForge, ExtJS, Tigris.org, PHP and MediaWiki. Google Code also provides Subversion hosting for their open source projects.

Gitlab - The platform for modern developers

  •    Ruby

GitLab Community Edition (CE) is open source software to collaborate on code. Create projects and repositories, manage access and do code reviews. Each project has a wiki backed up by a separate git repository. Use the ticketing system included in GitLab or integrate your existing system and lot more.

TortoiseHg - Client for Mercurial Revision Control

  •    Python

TortoiseHg is a Windows shell extension and a series of applications for the Mercurial distributed revision control system. It also includes a Gnome/Nautilus extension and a CLI wrapper application so the TortoiseHg tools can be used on non-Windows platforms.

Meld - Visual Diff and Merge Tool

  •    Python

Meld is a gnome2 diff and merge tool with pluggable support for version control systems such as cvs, subversion, bzr, darcs, mercurial, monotone, tla. Meld helps you review code changes and understand patches.

Trac - Integrated SCM and Project Management

  •    Python

Trac is a lightweight project management tool that is implemented as a web-based application. It has an enhanced wiki and issue tracking system for software development projects. Trac will impose as little as possible on a team's established development process and policies.

Kallithea - Powerful management tool for Mercurial and Git

  •    Python

Kallithea provides source code management system that supports two leading version control systems, Mercurial and Git, and has a web interface that is easy to use for users and admins. It provides powerful access management system lets you decide who has access to the repository, and what operations they’re entitled to do. All requests are authenticated and logged, giving the administrator an ability to review users’ activity. It has builtin support push/pull server, full text search and code-review.

Redmine - Project Management system in Ruby

  •    Ruby

Redmine is a flexible project management web application. Written using Ruby on Rails framework, it is cross-platform and cross-database.

python-versioneer - version-string management for VCS-controlled trees

  •    Python

This is a tool for managing a recorded version number in distutils-based python projects. The goal is to remove the tedious and error-prone "update the embedded version string" step from your release process. Making a new release should be as easy as recording a new tag in your version-control system, and maybe making new tarballs. For released software, the version identifier is closely related to a VCS tag. Some projects use tag names that include more than just the version string (e.g. "myproject-1.2" instead of just "1.2"), in which case the tool needs to strip the tag prefix to extract the version identifier. For unreleased software (between tags), the version identifier should provide enough information to help developers recreate the same tree, while also giving them an idea of roughly how old the tree is (after version 1.2, before version 1.3). Many VCS systems can report a description that captures this, for example git describe --tags --dirty --always reports things like "0.7-1-g574ab98-dirty" to indicate that the checkout is one revision past the 0.7 tag, has a unique revision id of "574ab98", and is "dirty" (it has uncommitted changes.

Ankhsvn

  •    CSharp

AnkhSVN is a Subversion Source Control Provider for Microsoft Visual Studio 2005, 2008 and 2010. AnkhSVN provides source code management support to all project types supported by Visual Studio and allows you to perform the most common version control operations directly from inside the Microsoft Visual Studio IDE.

Gitblit - Pure Java Git Solution

  •    Java

Gitblit is an open source, pure Java Git solution for managing, viewing, and serving Git repositories. It can serve repositories over the GIT, HTTP, and SSH transports; it can authenticate against multiple providers; and it allows you to get up-and-running with an attractive, capable Git server in less than 5 minutes. Gitblit can be used as a complete Git stack for cloning, pushing, and repository access control.

EPICS Version 4

  •    Java

EPICS Version 4 is a software toolkit for writing control systems