Mercurial > emacs
comparison man/files.texi @ 42338:8649ccc72076
Rewrite Types of Log File node.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Wed, 26 Dec 2001 00:42:56 +0000 |
parents | 86a0b7cc1600 |
children | 21907e7569d1 |
comparison
equal
deleted
inserted
replaced
42337:aed4f1043eb8 | 42338:8649ccc72076 |
---|---|
1106 replace SCCS, known as CSSC; if you are using SCCS and don't want to | 1106 replace SCCS, known as CSSC; if you are using SCCS and don't want to |
1107 make the incompatible change to RCS or CVS, you can switch to CSSC. | 1107 make the incompatible change to RCS or CVS, you can switch to CSSC. |
1108 | 1108 |
1109 @menu | 1109 @menu |
1110 * Introduction to VC:: How version control works in general. | 1110 * Introduction to VC:: How version control works in general. |
1111 * VC Mode Line:: How the mode line shows version control status. | 1111 * VC Mode Line:: How the mode line shows version control status. |
1112 * Basic VC Editing:: How to edit a file under version control. | 1112 * Basic VC Editing:: How to edit a file under version control. |
1113 * Old Versions:: Examining and comparing old versions. | 1113 * Old Versions:: Examining and comparing old versions. |
1114 * Secondary VC Commands:: The commands used a little less frequently. | 1114 * Secondary VC Commands:: The commands used a little less frequently. |
1115 * Branches:: Multiple lines of development. | 1115 * Branches:: Multiple lines of development. |
1116 * Remote Repositories:: Efficient access to remote CVS servers. | 1116 * Remote Repositories:: Efficient access to remote CVS servers. |
1220 check-in time. However, CVS can also be set up to require locking. | 1220 check-in time. However, CVS can also be set up to require locking. |
1221 (@pxref{CVS Options}). | 1221 (@pxref{CVS Options}). |
1222 | 1222 |
1223 @node Types of Log File | 1223 @node Types of Log File |
1224 @subsubsection Types of Log File | 1224 @subsubsection Types of Log File |
1225 @cindex Types of log file | 1225 @cindex types of log file |
1226 @cindex Log File, types of | 1226 @cindex log File, types of |
1227 @cindex version control log | |
1227 | 1228 |
1228 GNU projects under a revision control system generally possess | 1229 GNU projects under a revision control system generally possess |
1229 @emph{two} types of log. These help you keep track of what goes on. | 1230 @emph{two} types of log for changes. One is the per-file log |
1230 | 1231 maintained by the revision control system: each time you check in a |
1231 One kind of log is the per-file log maintained by the revision control | 1232 change, you must fill out a @dfn{log entry} for the change (@pxref{Log |
1232 system. This kind of log is called the @dfn{version control log}, or | 1233 Buffer}). This kind of log is called the @dfn{version control log}, |
1233 sometimes the @dfn{revision control log}, `@samp{*rcs*} log', or | 1234 or sometimes the @dfn{revision control log}, `@samp{*rcs*} log', or |
1234 `@samp{*cvs*} log'. The other kind of log is a per-directory or | 1235 `@samp{*cvs*} log'. |
1235 per-project log called the change log or @file{ChangeLog}. | 1236 |
1236 | 1237 The other kind of log the change log file, typically called |
1237 @cindex Version control log | 1238 @file{ChangeLog}. It provides a chronological record of all changes |
1238 @cindex Revision control log | 1239 to a large portion of a program---one directory and its |
1239 @cindex Per-file log | 1240 subdirectories. A small program would use one @file{ChangeLog} file; |
1240 The per-file log is designed to tell you about each and every change | 1241 a large program may well merit a @file{ChangeLog} file in each major |
1241 to a file. Each time you check in a change, you fill out a version | 1242 directory. @xref{Change Log}. |
1242 control log entry. (@xref{Log Buffer, Log Buffer, Features of the Log | 1243 |
1243 Entry Buffer}.) Consequently, a per-file log is very detailed, with | 1244 When you use version control, you can use just the per-file log if you |
1244 remarks such as `fixed typo' as well as `re-wrote from scratch'. | 1245 wish, or you can use both kinds of logs. When you use both, you |
1245 | 1246 typically want to write just one entry for each change. You can write |
1246 @cindex Change log | 1247 the entry in @file{ChangeLog}, then copy it to the log buffer when you |
1247 @cindex Per-directory log | 1248 check in the change. Or you can write the entry in the log buffer |
1248 @cindex Per-project log | 1249 while checking in the change, and later use the @kbd{C-x v a} command |
1249 On the other hand, a per-directory or per-project log is intended to | 1250 to copy it to @file{ChangeLog} (@pxref{Change Logs and VC}). |
1250 provide a chronological record of when and why you and others changed | |
1251 a program. A @file{ChangeLog} should be moderately, but not | |
1252 excessively detailed. | |
1253 | |
1254 A single @file{ChangeLog} file can record changes for all | |
1255 the files in its directory and all its subdirectories. A small | |
1256 program merits one @file{ChangeLog} file; a large program may well | |
1257 merit several @file{ChangeLog} file, one in each major directory. | |
1258 (@xref{Change Log, Change Log, Change Logs}.) | |
1259 | |
1260 You can use the Emacs command @r{@kbd{C-x 4 a}} | |
1261 (@code{add-change-log-entry-other-window}) to add a new entry to a | |
1262 change log file. | |
1263 | |
1264 If you use RCS or CVS, you can generate change log entries | |
1265 automatically from the version control log entries using | |
1266 the @r{@kbd{C-x v a}} (@code{vc-update-change-log}) command. | |
1267 (@xref{Change Logs and VC, Change Logs and VC, Change Logs and VC}.) | |
1268 When you do this, you will probably want to edit and shorten the | |
1269 resulting @file{ChangeLog}. | |
1270 | 1251 |
1271 @node VC Mode Line | 1252 @node VC Mode Line |
1272 @subsection Version Control and the Mode Line | 1253 @subsection Version Control and the Mode Line |
1273 | 1254 |
1274 When you visit a file that is under version control, Emacs indicates | 1255 When you visit a file that is under version control, Emacs indicates |