aboutsummaryrefslogtreecommitdiffstats
path: root/man
diff options
context:
space:
mode:
Diffstat (limited to 'man')
-rw-r--r--man/ChangeLog7
-rw-r--r--man/files.texi80
2 files changed, 63 insertions, 24 deletions
diff --git a/man/ChangeLog b/man/ChangeLog
index 22ac03e8677..6aa29b26aee 100644
--- a/man/ChangeLog
+++ b/man/ChangeLog
@@ -1,3 +1,10 @@
12004-11-10 Andre Spiegel <spiegel@gnu.org>
2
3 * files.texi (Version Control): Rewrite the introduction about
4 version systems, mentioning the new ones that we support. Thanks
5 to Alex Ott, Karl Fogel, Stefan Monnier, and David Kastrup for
6 suggestions.
7
12004-11-02 Katsumi Yamaoka <yamaoka@jpl.org> 82004-11-02 Katsumi Yamaoka <yamaoka@jpl.org>
2 9
3 * emacs-mime.texi (Encoding Customization): Fix 10 * emacs-mime.texi (Encoding Customization): Fix
diff --git a/man/files.texi b/man/files.texi
index 4e36c2ab2fa..6a0d2c662b5 100644
--- a/man/files.texi
+++ b/man/files.texi
@@ -1119,11 +1119,13 @@ such as the creation time of each version, who created it, and a
1119description of what was changed in that version. 1119description of what was changed in that version.
1120 1120
1121 The Emacs version control interface is called VC. Its commands work 1121 The Emacs version control interface is called VC. Its commands work
1122with three version control systems---RCS, CVS, and SCCS. The GNU 1122with different version control systems---currently, it supports CVS,
1123project recommends RCS and CVS, which are free software and available 1123GNU Arch, RCS, Meta-CVS, Subversion, and SCCS. Of these, the GNU
1124from the Free Software Foundation. We also have free software to 1124project distributes CVS, GNU Arch, and RCS; we recommend that you use
1125replace SCCS, known as CSSC; if you are using SCCS and don't want to 1125either CVS or GNU Arch for your projects, and RCS for individual
1126make the incompatible change to RCS or CVS, you can switch to CSSC. 1126files. We also have free software to replace SCCS, known as CSSC; if
1127you are using SCCS and don't want to make the incompatible change to
1128RCS or CVS, you can switch to CSSC.
1127 1129
1128 VC is enabled by default in Emacs. To disable it, set the 1130 VC is enabled by default in Emacs. To disable it, set the
1129customizable variable @code{vc-handled-backends} to @code{nil} 1131customizable variable @code{vc-handled-backends} to @code{nil}
@@ -1164,31 +1166,61 @@ you want to use.
1164@node Version Systems 1166@node Version Systems
1165@subsubsection Supported Version Control Systems 1167@subsubsection Supported Version Control Systems
1166 1168
1167@cindex RCS
1168@cindex back end (version control) 1169@cindex back end (version control)
1169 VC currently works with three different version control systems or 1170 VC currently works with six different version control systems or
1170``back ends'': RCS, CVS, and SCCS. 1171``back ends'': CVS, GNU Arch, RCS, Meta-CVS, Subversion, and SCCS.
1171
1172 RCS is a free version control system that is available from the Free
1173Software Foundation. It is perhaps the most mature of the supported
1174back ends, and the VC commands are conceptually closest to RCS. Almost
1175everything you can do with RCS can be done through VC.
1176 1172
1177@cindex CVS 1173@cindex CVS
1178 CVS is built on top of RCS, and extends the features of RCS, allowing 1174 CVS is a free version control system that is used for the majority
1179for more sophisticated release management, and concurrent multi-user 1175of free software projects today. It allows concurrent multi-user
1180development. VC supports basic editing operations under CVS, but for 1176development either locally or over the network. Some of its
1181some less common tasks you still need to call CVS from the command line. 1177shortcomings, corrected by newer systems such as GNU Arch, are that it
1182Note also that before using CVS you must set up a repository, which is a 1178lacks atomic commits or support for renaming files. VC supports all
1183subject too complex to treat here. 1179basic editing operations under CVS, but for some less common tasks you
1180still need to call CVS from the command line. Note also that before
1181using CVS you must set up a repository, which is a subject too complex
1182to treat here.
1183
1184@cindex GNU Arch
1185@cindex Arch
1186 GNU Arch is a new version control system that is designed for
1187distributed work. It differs in many ways from old well-known
1188systems, such as CVS and RCS. It supports different transports for
1189interoperating between users, offline operations, and it has good
1190branching and merging features. It also supports atomic commits, and
1191history of file renaming and moving. VC does not support all
1192operations provided by GNU Arch, so you must sometimes invoke it from
1193the command line, or use a specialized module.
1194
1195@cindex RCS
1196 RCS is the free version control system around which VC was initially
1197built. The VC commands are therefore conceptually closest to RCS.
1198Almost everything you can do with RCS can be done through VC. You
1199cannot use RCS over the network though, and it only works at the level
1200of individual files, rather than projects. You should use it if you
1201want a simple, yet reliable tool for handling individual files.
1202
1203@cindex SVN
1204@cindex Subversion
1205 Subversion is a free version control system designed to be similar
1206to CVS but without CVS's problems. Subversion supports atomic commits,
1207and versions directories, symbolic links, meta-data, renames, copies,
1208and deletes. It can be used via http or via its own protocol.
1209
1210@cindex MCVS
1211@cindex Meta-CVS
1212 Meta-CVS is another attempt to solve problems, arising in CVS. It
1213supports directory structure versioning, improved branching and
1214merging, and use of symbolic links and meta-data in repositories.
1184 1215
1185@cindex SCCS 1216@cindex SCCS
1186 SCCS is a proprietary but widely used version control system. In 1217 SCCS is a proprietary but widely used version control system. In
1187terms of capabilities, it is the weakest of the three that VC 1218terms of capabilities, it is the weakest of the six that VC supports.
1188supports. VC compensates for certain features missing in SCCS 1219VC compensates for certain features missing in SCCS (snapshots, for
1189(snapshots, for example) by implementing them itself, but some other VC 1220example) by implementing them itself, but some other VC features, such
1190features, such as multiple branches, are not available with SCCS. You 1221as multiple branches, are not available with SCCS. You should use
1191should use SCCS only if for some reason you cannot use RCS. 1222SCCS only if for some reason you cannot use RCS, or one of the
1223higher-level systems such as CVS or GNU Arch.
1192 1224
1193@node VC Concepts 1225@node VC Concepts
1194@subsubsection Concepts of Version Control 1226@subsubsection Concepts of Version Control