diff options
Diffstat (limited to 'man')
| -rw-r--r-- | man/ChangeLog | 7 | ||||
| -rw-r--r-- | man/files.texi | 80 |
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 @@ | |||
| 1 | 2004-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 | |||
| 1 | 2004-11-02 Katsumi Yamaoka <yamaoka@jpl.org> | 8 | 2004-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 | |||
| 1119 | description of what was changed in that version. | 1119 | description 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 |
| 1122 | with three version control systems---RCS, CVS, and SCCS. The GNU | 1122 | with different version control systems---currently, it supports CVS, |
| 1123 | project recommends RCS and CVS, which are free software and available | 1123 | GNU Arch, RCS, Meta-CVS, Subversion, and SCCS. Of these, the GNU |
| 1124 | from the Free Software Foundation. We also have free software to | 1124 | project distributes CVS, GNU Arch, and RCS; we recommend that you use |
| 1125 | replace SCCS, known as CSSC; if you are using SCCS and don't want to | 1125 | either CVS or GNU Arch for your projects, and RCS for individual |
| 1126 | make the incompatible change to RCS or CVS, you can switch to CSSC. | 1126 | files. We also have free software to replace SCCS, known as CSSC; if |
| 1127 | you are using SCCS and don't want to make the incompatible change to | ||
| 1128 | RCS 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 |
| 1129 | customizable variable @code{vc-handled-backends} to @code{nil} | 1131 | customizable 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 | ||
| 1173 | Software Foundation. It is perhaps the most mature of the supported | ||
| 1174 | back ends, and the VC commands are conceptually closest to RCS. Almost | ||
| 1175 | everything 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 |
| 1179 | for more sophisticated release management, and concurrent multi-user | 1175 | of free software projects today. It allows concurrent multi-user |
| 1180 | development. VC supports basic editing operations under CVS, but for | 1176 | development either locally or over the network. Some of its |
| 1181 | some less common tasks you still need to call CVS from the command line. | 1177 | shortcomings, corrected by newer systems such as GNU Arch, are that it |
| 1182 | Note also that before using CVS you must set up a repository, which is a | 1178 | lacks atomic commits or support for renaming files. VC supports all |
| 1183 | subject too complex to treat here. | 1179 | basic editing operations under CVS, but for some less common tasks you |
| 1180 | still need to call CVS from the command line. Note also that before | ||
| 1181 | using CVS you must set up a repository, which is a subject too complex | ||
| 1182 | to treat here. | ||
| 1183 | |||
| 1184 | @cindex GNU Arch | ||
| 1185 | @cindex Arch | ||
| 1186 | GNU Arch is a new version control system that is designed for | ||
| 1187 | distributed work. It differs in many ways from old well-known | ||
| 1188 | systems, such as CVS and RCS. It supports different transports for | ||
| 1189 | interoperating between users, offline operations, and it has good | ||
| 1190 | branching and merging features. It also supports atomic commits, and | ||
| 1191 | history of file renaming and moving. VC does not support all | ||
| 1192 | operations provided by GNU Arch, so you must sometimes invoke it from | ||
| 1193 | the command line, or use a specialized module. | ||
| 1194 | |||
| 1195 | @cindex RCS | ||
| 1196 | RCS is the free version control system around which VC was initially | ||
| 1197 | built. The VC commands are therefore conceptually closest to RCS. | ||
| 1198 | Almost everything you can do with RCS can be done through VC. You | ||
| 1199 | cannot use RCS over the network though, and it only works at the level | ||
| 1200 | of individual files, rather than projects. You should use it if you | ||
| 1201 | want 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 | ||
| 1206 | to CVS but without CVS's problems. Subversion supports atomic commits, | ||
| 1207 | and versions directories, symbolic links, meta-data, renames, copies, | ||
| 1208 | and 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 | ||
| 1213 | supports directory structure versioning, improved branching and | ||
| 1214 | merging, 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 |
| 1187 | terms of capabilities, it is the weakest of the three that VC | 1218 | terms of capabilities, it is the weakest of the six that VC supports. |
| 1188 | supports. VC compensates for certain features missing in SCCS | 1219 | VC compensates for certain features missing in SCCS (snapshots, for |
| 1189 | (snapshots, for example) by implementing them itself, but some other VC | 1220 | example) by implementing them itself, but some other VC features, such |
| 1190 | features, such as multiple branches, are not available with SCCS. You | 1221 | as multiple branches, are not available with SCCS. You should use |
| 1191 | should use SCCS only if for some reason you cannot use RCS. | 1222 | SCCS only if for some reason you cannot use RCS, or one of the |
| 1223 | higher-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 |