CVSNT

Last updated
CVSNT
Developer(s) March Hare Software, Ltd.
Initial release1998
Stable release
2009R2 / September 15, 2017;5 years ago (2017-09-15) [1]
Repository
  • [cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt cvs://:pserver:cvs:@cvs.cvsnt.org:/cvsnt] OOjs UI icon edit-ltr-progressive.svg
Operating system Unix-like, Linux, Windows, Mac OS X, OS/400
Type Version control
License GNU GPL, GNU LGPL, others
Website march-hare.com/cvsnt/

CVSNT is a version control system compatible with and originally based on Concurrent Versions System (CVS), but whereas that was popular in the open-source world, CVSNT included features designed for developers working on commercial software including support for Windows, Active Directory authentication, reserved branches/locking, per-file access control lists and Unicode filenames. Also included in CVSNT were various RCS tools updated to work with more recent compilers and compatible with CVSNT.

Contents

CVSNT was initially developed by users unhappy with the limitations of CVS 1.10.8, addressing limitations related to running CVS server on Windows and handling filenames for case-insensitive platforms. 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.

CVSNT was commercially popular, with a number of commercial IDEs directly including support for it including Oracle JDeveloper, [2] IBM Rational Application Developer, [3] and IBM WebSphere Business Modeler. [4] The CVSNT variation of RCS tools were also widely used, including by Apple, Inc. [5] CVSNT was so ubiquitous in commercial programming that it was often referred to simply as CVS, [6] even though the open-source CVS developers had publicly stated that CVSNT was significantly different and should be kept as a separate project.[ original research? ]

Several books were written about CVSNT including CVSNT (CVS for NT) [7] and All About CVS. [8]

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. [9] [10]

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: [11]

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. [17]

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 [18] are included in CVSNT and most from CVS 1.12 (e.g.: the 1.12 'ls' [19] feature is functionally compatible with the CVSNT 'ls' [20] ).

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.[ citation needed ]

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).[ citation needed ]

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 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.[ citation needed ]

On June 30, 2010, [21] 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 [22] and available from the web store, [23] as are snapshots of the older community releases (unsupported, and a fee is required to download). [24] 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, [25] is provided by a volunteer and may be withdrawn at any time". [26] 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, [27] as is explicitly required by the license.[ original research? ]

Embedded

Software incorporating CVSNT includes:

Future roadmap

March Hare plans to deliver the following features in the next release: [31]

See also

Related Research Articles

Concurrent Versions System is a revision control system originally developed by Dick Grune in July 1986.

<span class="mw-page-title-main">Apache Subversion</span> Free and open-source software versioning and revision control system

Apache Subversion is a software versioning and revision control system distributed as open source under the Apache License. Software developers use Subversion to maintain current and historical versions of files such as source code, web pages, and documentation. Its goal is to be a mostly compatible successor to the widely used Concurrent Versions System (CVS).

FileMaker is a cross-platform relational database application from Claris International, a subsidiary of Apple Inc. It integrates a database engine with a graphical user interface (GUI) and security features, allowing users to modify a database by dragging new elements into layouts, screens, or forms. It is available in desktop, server, iOS and web-delivery configurations.

Cedega was the proprietary fork by TransGaming Technologies of Wine, from the last version of Wine under the X11 license before switching to GNU LGPL. It was designed specifically for running games created for Microsoft Windows under Linux. As such, its primary focus was implementing the DirectX API. WineX was renamed to Cedega on the release of version 4.0 on June 22, 2004.

Windows Services for UNIX (SFU) is a discontinued software package produced by Microsoft which provided a Unix environment on Windows NT and some of its immediate successor operating-systems.

<span class="mw-page-title-main">Git</span> Software for version control of files

Git is a distributed version control system that tracks changes in any set of computer files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data integrity, and support for distributed, non-linear workflows.

<span class="mw-page-title-main">Mantis Bug Tracker</span> Bug tracking system

Mantis Bug Tracker is a free and open source, web-based bug tracking system. The most common use of MantisBT is to track software defects. However, MantisBT is often configured by users to serve as a more generic issue tracking system and project management tool.

Microsoft Visual SourceSafe (VSS) is a discontinued source control program oriented towards small software development projects. Like most source control systems, SourceSafe creates a virtual library of computer files. While most commonly used for source code, SourceSafe can handle any type of file in its database, but older versions were shown to be unstable when used to store large amounts of non-textual data, such as images and compiled executables.

OpenROAD stands for "Open Rapid Object Application Development". It is a software product of Actian Corporation.

In software development, version control is a class of systems responsible for managing changes to computer programs or other collections of information such that revisions have a logical and consistent organization. The following tables include general and technical information on notable version control and software configuration management (SCM) software. For SCM software not suitable for source code, see Comparison of open-source configuration management software.

<span class="mw-page-title-main">GNU Bazaar</span>

GNU Bazaar is a distributed and client–server revision control system sponsored by Canonical.

Configuration Management Version Control (CMVC) is a software package that serves as an object repository, and performs software version control, configuration management, and change management functions.

Azure DevOps Server is a Microsoft product that provides version control, reporting, requirements management, project management, automated builds, testing and release management capabilities. It covers the entire application lifecycle, and enables DevOps capabilities. Azure DevOps can be used as a back-end to numerous integrated development environments (IDEs) but is tailored for Microsoft Visual Studio and Eclipse on all platforms.

An embedded database system is a database management system (DBMS) which is tightly integrated with an application software; it is embedded in the application. It is a broad technology category that includes:

SVNKit is an open-source, pure Java software library for working with the Subversion version control system. It is free to use on opensource projects but requires that you buy a commercial license to use to develop with proprietary software. It implements virtually all Subversion features and provides API to work with Subversion working copies, access and manipulate Subversion repositories.

<span class="mw-page-title-main">TortoiseHg</span>

TortoiseHg is a GUI front-end for Mercurial that runs on Microsoft Windows, Mac OS X, and Linux.

Plastic SCM is a cross-platform commercial distributed version control tool developed by Códice Software Inc. It is available for Microsoft Windows, Mac OS X, Linux, and other operating systems. It includes a command-line tool, native GUIs, diff and merge tool and integration with a number of IDEs. It is a full version control stack not based on Git.

<span class="mw-page-title-main">GNU Health</span> Free hospital, social medicine and laboratory informatics software

GNU Health is a free/libre health and hospital information system with strong focus on public health and social medicine. Its functionality includes management of electronic health records and laboratory information management system.

<span class="mw-page-title-main">DBeaver</span> Multi-platform database administration software

DBeaver is a SQL client software application and a database administration tool. For relational databases it uses the JDBC application programming interface (API) to interact with databases via a JDBC driver. For other databases (NoSQL) it uses proprietary database drivers. It provides an editor that supports code completion and syntax highlighting. It provides a plug-in architecture that allows users to modify much of the application's behavior to provide database-specific functionality or features that are database-independent. This is a desktop application written in Java and based on Eclipse platform.

References

  1. "Release Schedule" . Retrieved 15 November 2021.
  2. "Fusion Middleware Developing Applications with Oracle JDeveloper" . Retrieved 15 November 2021.
  3. "Apple open source code referencing CVSNT".
  4. "Connect CVSNT Repository - IBM".
  5. "Apple open source code referencing CVSNT" . Retrieved 15 November 2021.
  6. "Using an External Diff Tool with CVS".
  7. "CVSNT (CVS for NT) - Tankobon".
  8. "All About CVS" . Retrieved 15 November 2021.
  9. "cvsnt 2.0.58 (stable) release notes". CVSNT Project. Retrieved 23 March 2012.
  10. "cvsnt new features". March Hare Software Ltd. Retrieved 23 March 2012.
  11. "cvsnt 2.0.58 (stable) release notes". CVSNT Project. Retrieved 23 March 2012.
  12. "Controlling Repository Access With CVSNT ACLs". SourceHosting.net, LLC. Retrieved 23 March 2012.
  13. "Using CVSNTs History SQL tables instead of parsing the CVS Logs". Chris Houghten / JIRA Community Space. Retrieved 23 March 2012.
  14. "CVSNT 2.5.03 Auditing Tutorial". Bo Berglund. Archived from the original on 21 June 2010. Retrieved 23 March 2012.
  15. "CVSNT Audit". March Hare Software Ltd. Retrieved 23 March 2012.
  16. "Using the SSPI protocol for CVSNT access". Bo Berglund. Archived from the original on 5 June 2012. Retrieved 3 May 2012.
  17. "HistoryPage - The CVSNT Wiki". Tony Hoyle / CVSNT Project. Archived from the original on June 18, 2004. Retrieved 13 July 2013.
  18. "CVSNT Project History". CVSNT Project. Archived from the original on May 30, 2002. Retrieved 30 May 2002.
  19. "Savannah CVS Surfing - Log of /cvs/ccvs/src/ls.c". Free Software Foundation. Retrieved 23 March 2011.
  20. "CVSNT Manual". March Hare Software Ltd. Retrieved 23 March 2011.
  21. "EVS Developer Support Downloads: Announcement". EVS Open Source Website. Retrieved 1 July 2010.
  22. "what integrates better - CVS or Mercurial?". Bugzilla/Mozilla Project. Retrieved 7 December 2010.
  23. "Buy CVSNT Versioning Solutions". March Hare Software. Retrieved 1 July 2010.
  24. "Unsupported Community Software". March Hare Software. Retrieved 1 July 2010.
  25. "What is the CVS Suite License". March Hare Software. Retrieved 13 Feb 2011.
  26. "CVSNT is Changing". March Hare Software. Retrieved 13 Feb 2011.
  27. "What is the CVS Suite License?". March Hare Software. Retrieved 13 Feb 2011.
  28. "TortoiseCVS : About" . Retrieved 2012-03-15.
  29. "CvsGui" . Retrieved 2012-03-15.
  30. "CSC VP/MS" . Retrieved 2012-03-15.
  31. "CVSNT/EVS 3.1.01" . Retrieved 2007-12-04.

Further reading