CVSNT

The CVSNT Versioning System implements a version control system: it keeps track of all changes in a set of files, typically the implementation of a software project, and allows several (potentially geographically separated) developers to collaborate. It is compatible with and originally based on Concurrent Versions System (CVS), which has become popular in the open-source world.

CVSNT Community Edition
Developer(s)March Hare Software, Ltd.
Stable release
2.5.05 / March 26, 2010 (2010-03-26)
Repository
  • [cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt]
Operating systemWindows, Unix-like, Linux, Mac OS X, OS/400
PlatformCross-platform
TypeVersion control
LicenseGPL
Websitecvsnt.org
CVS Suite (CVSNT 2.8)
Developer(s)March Hare Software, Ltd.
Stable release
2009R2 / July 29, 2011 (2011-07-29)[1]
Repository
  • [cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt]
Operating systemUnix-like, Linux, Windows, Mac OS X, OS/400
PlatformCross-platform
TypeVersion control
LicenseGPL and others
Websitemarch-hare.com/cvsnt/
EVS (CVSNT 3.1.01)
Developer(s)March Hare Software, Ltd.
Stable release
3.1.01 / December 31, 2008 (2008-12-31)
Repository
  • [cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt]
Operating systemUnix-like, Linux, Windows, Mac OS X
PlatformCross-platform
TypeVersion control
LicenseLGPL
Websiteevscm.org

Features

CVSNT keeps track of the version history of a project (or set of files).

CVSNT is based on the same client–server architecture as the Concurrent Versions System: a server stores the current version(s) of the project and its history, and clients connect to the server in order to check-out a complete copy of the project, work on this copy and then later check-in their changes. A server may be a caching or proxy server (a read only server that passes on write requests to another server) or a read and write (normal) server.

Typically, client and server connect over a WAN or Internet, but client and server may both run on the same LAN or even the same machine. The server software runs equally well on Unix and Windows. It is compatible with CVS clients and supports a large number of configuration management methodologies including the CVS compatible unreserved method and the VSS-like reserved method.[2][3]

The modular nature of CVSNT allows server administrators to dynamically enable and disable protocols as well as load additional functions via triggers such as Audit, Defect Tracking Integration, Automatic Checkout (for webservers) and more.

CVSNT Server features include:[4]

  • Access control for securing projects and branches.[5]
  • Detailed audit and metrics recorded in an SQL database.[6][7][8]
  • Authentication with Active Directory.[9]
  • Tracking everything about the change - including whether it was merged from somewhere, belongs to a problem report or was part of a change set.
  • A control panel to manage email notification of changes, defect tracking integration, and more.
  • Integrated repository synchronisation (for fail-over servers).
  • Change set support (group changes by defect number).
  • Supports Unicode UTF-8/UCS-2 files and multi-lingual filenames.
  • When operating in UTF-8 (Unicode) mode it can automatically translate filename encoding for any client.
  • Plug-ins for email notification.
  • Helps make merging branches easier with its "Mergepoint" feature.
  • Native servers available for Mac OS X, Windows, Linux, Solaris, HP-UX.
  • Supports reserved and unreserved versioning methodologies.
  • CVSAPI for integration into third-party products.
  • Script, COM and 3GL interface for triggers and integration into 3rd party tools (such as defect tracking)

History and status

Users unhappy with the limitations of CVS 1.10.8 began the development of CVSNT. The original limitations addressed were related to running CVS server on Windows and handling filenames for case-insensitive platforms.

The first version was released in 1998, and stable feature releases have been released roughly every three to four months since. Linux and Unix support was re-added to CVSNT in early 2002.[10]

From the project's inception until October 2002 CVSNT and CVS used identical version numbers and CVSNT was "kept in sync" with the features and code base of CVS. After October 2002, CVSNT began its own version sequence beginning with "2" to indicate significant departure from its CVS origins. Since that time, there has not been a stable feature release of CVS. However the unstable CVS 1.12 contains some of the oldest features originally implemented in CVSNT. Due to this shared history, all features from CVS 1.11[11] are included in CVSNT and most from CVS 1.12 (e.g.: the 1.12 'ls'[12] feature is functionally compatible with the CVSNT 'ls'[13]).

In 2003, the CVSNT SJIS project released a Japanese version of CVSNT including support for SJIS filenames and file encoding.

March Hare Software began sponsorship of the project in July 2004 to guarantee the project's future and to employ the original project manager on CVSNT development and commercial support.

In February 2005, the project servers moved to CVSNT version 2.5 and began unstable releases of a new server incorporating server plugins, ACLs, filename character set conversion as well as client/server autodiscovery. In October 2005, the first commercial CVS Suite was released, incorporating non-GPL addins and clients for CVSNT. In November 2005, CVSNT was enhanced to incorporate the features of the CVSNT SJIS project.

In March 2006, the project servers moved to CVSNT version 2.6 and began unstable releases of the new server backend. This backend incorporated a partial SQL database repository to facilitate better server performance and more complex server features. When work was abandoned on CVSNT 2.6 and moved to EVS/CVSNT 3.1 the project server was moved back to 2.5.04.

In November 2008 the project released version 2.5.04 with support for multi site repository replication or 'local' repository caches and specific performance features for using large files use over a WAN. The project began advertising for contributors more aggressively including placing advertising in commit comments (which can be turned off). Note: Although March-Hare's site gives 'instructions' for disabling the advertising messages, it has been documented that the method given does not work for release 2.5.04.''

In March 2010 the project released version 2.5.05 with a server that always runs in Unicode, native Windows crypt and schannel support and support for Internationalized Domain Names.

The open source CVSNT project does not have a "project charter". This was a decision based on the observation that the charter prevented the CVS project from evolving CVS into a versioning system supporting modern CM best practice. The CVSNT project will continue to evolve the software as the scope of version management and CM changes, including changes to expand the supported methodologies.

The status of the project is active, with further releases of CVSNT 2.5 planned, and continuing evolution of CVSNT/EVS 3.1. CVSNT/EVS will implement a complete SQL database repository to support further complex server and client features. An RCS emulation layer is also planned for CVSNT/EVS 3.1 to support legacy systems.

On June 30, 2010,[14] March Hare retired the zero-dollar Community edition, however the commercial "CVS Suite" edition with a new CVSNT 2.8 release and support is actively developed[15] and available from the web store,[16] as are snapshots of the older community releases (unsupported, and a fee is required to download).[17] Email support is available for customers but the community mailing list/newsgroup has been removed. The description of the public CVS server for source code was updated with the caveat "not guaranteed to be available 24x7,[18] is provided by a volunteer and may be withdrawn at any time".[19] This arrangement appears to fulfil the requirements of the GPL, since the software offered for download includes a written offer to receive the source code,[20] as is explicitly required by the license.[21]

Older versions can still be downloaded for free from various repositories,[22][23] or,[24] including source code.

Embedded

To many people CVSNT is best known because it has been embedded in a 3rd party systems. Software incorporating CVSNT includes:

  • TortoiseCVS [25] recommend CVSNT for both Unix and Windows machines.
  • WinCVS was developed in close cooperation with CVSNT project.[26]
  • VP/MS [27]

Future roadmap

March Hare plans to deliver the following features in the next release "CVSNT/EVS 3.1.01". Retrieved 2007-12-04. :

gollark: I mean, if Thue makes your development experience nicer, go for it!
gollark: R U S T!
gollark: Use Rust. Rust is good. All Hail Rust.
gollark: Then still probably not, given how often your stuff gets used...
gollark: Let's be honest, 90% of the time you won't go anywhere near amounts of data which will cause performance problems in esolangs.

See also

  • Version control system, general overview
  • CVSNT was originally forked from Concurrent Versions System (CVS) in 2004
  • List of revision control software
  • Comparison of revision control software

Literature

  • March Hare Software: All About CVS: How to Design and Build an Effective CM solution using TortoiseCVS, WinCVS, Bugzilla on Windows and Linux (2005).

References

  1. "Release Schedule". Retrieved 29 July 2011.
  2. "cvsnt 2.0.58 (stable) release notes". CVSNT Project. Retrieved 23 March 2012.
  3. "cvsnt new features". March Hare Software Ltd. Retrieved 23 March 2012.
  4. "cvsnt 2.0.58 (stable) release notes". CVSNT Project. Retrieved 23 March 2012.
  5. "Controlling Repository Access With CVSNT ACLs". SourceHosting.net, LLC. Retrieved 23 March 2012.
  6. "Using CVSNTs History SQL tables instead of parsing the CVS Logs". Chris Houghten / JIRA Community Space. Retrieved 23 March 2012.
  7. "CVSNT 2.5.03 Auditing Tutorial". Bo Berglund. Archived from the original on 21 June 2010. Retrieved 23 March 2012.
  8. "CVSNT Audit". March Hare Software Ltd. Retrieved 23 March 2012.
  9. "Using the SSPI protocol for CVSNT access". Bo Berglund. Archived from the original on 5 June 2012. Retrieved 3 May 2012.
  10. "HistoryPage - The CVSNT Wiki". Tony Hoyle / CVSNT Project. Archived from the original on June 18, 2004. Retrieved 13 July 2013.
  11. "CVSNT Project History". CVSNT Project. Archived from the original on May 30, 2002. Retrieved 30 May 2002.
  12. "Savannah CVS Surfing - Log of /cvs/ccvs/src/ls.c". Free Software Foundation. Retrieved 23 March 2011.
  13. "CVSNT Manual". March Hare Software Ltd. Retrieved 23 March 2011.
  14. "EVS Developer Support Downloads: Announcement". EVS Open Source Website. Retrieved 1 July 2010.
  15. "what integrates better - CVS or Mercurial?". Bugzilla/Mozilla Project. Retrieved 7 December 2010.
  16. "Buy CVSNT Versioning Solutions". March Hare Software. Retrieved 1 July 2010.
  17. "Unsupported Community Software". March Hare Software. Retrieved 1 July 2010.
  18. "What is the CVS Suite License". March Hare Software. Retrieved 13 Feb 2011.
  19. "CVSNT is Changing". March Hare Software. Retrieved 13 Feb 2011.
  20. "What is the CVS Suite License?". March Hare Software. Retrieved 13 Feb 2011.
  21. "GNU General Public License, version 2". The Free Software Foundation. Retrieved 13 Feb 2011.
  22. packages in Ubuntu
  23. packages in Debian
  24. rpm packages in rpmfind
  25. "TortoiseCVS : About". Retrieved 2012-03-15.
  26. "CvsGui". Retrieved 2012-03-15.
  27. "CSC VP/MS". Retrieved 2012-03-15.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.