GNU arch

from Wikipedia, the free encyclopedia

GNU arch is software for distributed versioning . Version control systems are u. A. used to save the changes to the source code of a program and to give developers the opportunity to work on them at the same time.

The last release was published on July 20, 2006; the last change in the code repository was on February 15, 2008.

GNU arch has been completely replaced by Bazaar , a fork .

features

GNU arch takes a slightly different approach than most other version controls. Every revision, i.e. H. Changes to the source text can be clearly identified. This makes it possible to merge source code trees that are actually completely dissimilar.

GNU arch operates in a decentralized manner , which means that there is no need for a central server with separate user management. Instead, a so-called head developer , i.e. a developer in a central position in the project, simply provides a copy of the project via HTTP , FTP , SFTP or any other protocol that is suitable for file transfer. Developers who want to work on the project get these copies and make their changes, which are sent back to the head developer and entered by him into the official source code tree.

To mimic the behavior of a centralized version control system, the head developer could give the co-developers e.g. B. Provide shell access via SSH . After authentication, they can then change the source code directly via write access in the file system.

Other features of GNU arch:

  • Atomic commits : A commit only takes place as a transaction; if part of the commit fails, all changes are rolled back. This guarantees consistent commits.
  • Orientation towards changesets : GNU arch manages so-called changesets , i.e. changes to several files instead of individual files
  • Easy and progressive branching , i.e. the splitting off and later joining together of source code tree parts for the purpose of simultaneous processing
  • Advanced merging of changesets
  • Cryptographic signatures for authentication
  • File and directory renaming (a CVS vulnerability )
  • Management of symbolic links

author

The main developer and administrator of GNU arch is Tom Lord. GNU arch is also sometimes called tla , an acronym for Tom Lord's Arch . Lord began developing GNU arch as a collection of shell scripts as an alternative to CVS. In 2003 arch became part of the GNU project .

criticism

The most common criticism of arch is its steep learning curve , even for users with previous experience with other version control systems. Arch's large number of commands can be daunting to new users.

The somewhat unusual file naming convention FunkyFileNames also met with criticism. They make it difficult to process arch files in shell scripts and to port arch to other operating systems. Arch also has a reputation for not scaling very well on large source code trees.

Web links

Individual evidence

  1. ^ Project page at GNU Savannah
  2. Source Code Repository
  3. Arch naming conventions from a layman's standpoint ( Memento of 8 August 2007 at the Internet Archive )