Copyright (C) 2000-2012 |
GNU Info (cvsbook.info)loglog --- Synopsis: log [OPTIONS] [FILES] * Alternate names - lo, rlog * Requires - Working copy, repository * Changes - Nothing Shows log messages for a project, or for files within a project. The output of log is not quite in the same style as the output of other CVS commands, because log is based on an older RCS program (rlog). Its output format gives a header, containing various pieces of non-revision-specific information about the file, followed by the log messages (arranged by revision). Each revision shows not merely the revision number and log message, but also the author and date of the change and the number of lines added or deleted. All times are printed in UTC (GMT), not local time. Because log output is per file, a single commit involving multiple files may not immediately appear as a conceptually atomic change. However, if you read all of the log messages and dates carefully, you may be able to reconstruct what happened. (For information about a tool that can reformat multifile log output into a more readable form, see Note: cvs2cl -- Generate GNU-Style ChangeLogs in Note: Third-Party Tools for details.) (See also Note: history.) Options: As you read over the following filtering options, it may not be completely clear how they behave when combined. A precise description of log's behavior is that it takes the intersection of the revisions selected by -d, -s, and -w, intersected with the union of those selected by -b and -r. * -b - Prints log information about the default branch only (usually the highest branch on the trunk). This is usually done to avoid printing the log messages for side branches of development. * -dDATES - Prints log information for only those revisions that match the date or date range given in DATES, a semicolon-separated list. Dates can be given in any of the usual date formats (see Note: Date Formats earlier in this section) and can be combined into ranges as follows: * DATE1<DATE2 - Selects revisions created between DATE1 and DATE2. If DATE1 is after DATE2, use `>' instead; otherwise, no log messages are retrieved. * <DATE DATE> - All revisions from DATE or earlier. * >DATE DATE< - All revisions from DATE or later. * DATE - Just selects the most recent single revision from DATE or earlier. You may use `<=' and `>=' instead of `<' and `>' to indicate an inclusive range (otherwise, ranges are exclusive). Multiple ranges should be separated with semicolons, for example floss$ cvs log -d"1999-06-01<1999-07-01;1999-08-01<1999-09-01" selects log messages for revisions committed in June or August of 1999 (skipping July). There can be no space between -d and its arguments. * -h - Prints only the header information for each file, which includes the file name, working directory, head revision, default branch, access list, locks, symbolic names (tags), and the file's default keyword substitution mode. No log messages are printed. * -l - Local. Runs only on files in the current working directory. * -N - Omits the list of symbolic names (tags) from the header. This can be helpful when your project has a lot of tags but you're only interested in seeing the log messages. * -R - Prints the name of the RCS file in the repository. This is different from the usual meaning of -R: "recursive". There's no way to override a -l for this command, so don't put log -l in your .cvsrc. * -rREVS - Shows log information for the revisions specified in REVS, a comma-separated list. REVS can contain both revision numbers and tags. Ranges can be specified like this: * REV1:REV2 - Revisions from REV1 to REV2 (they must be on the same branch). * :REV - Revisions from the start of REV's branch up to and including REV. * REV: - Revisions from REV to the end of REV's branch. * BRANCH - All revisions on that branch, from root to tip. * BRANCH1:BRANCH2 - A range of branches - all revisions on all the branches in that range. * BRANCH. - The latest (tip) revision on BRANCH. Finally, a lone -r, with no argument, means select the latest revision on the default branch (normally the trunk). There can be no space between -r and its argument. If the argument to -r is a list, it is comma-separated, not semicolon-separated like -d. * -sSTATES - Selects revisions whose state attribute matches one of the states given in STATES, a comma-separated list. There can be no space between -s and its argument. If the argument to -s is a list, it is comma-separated, not semicolon-separated like -d. * -t - Like -h, but also includes the file's description (its creation message). * -wUSERS - Selects revisions committed by users whose usernames appear in the comma-separated list USERS. A lone -w with no USERS means to take the username of the person running cvs log. Remember that when user aliasing is in effect (see the section Note: The Password-Authenticating Server in Note: Repository Administration), CVS records the CVS username, not the system username, with each commit. There can be no space between -w and its argument. If the argument to -w is a list, it is comma-separated, not semicolon-separated like -d. automatically generated by info2www version 1.2.2.9 |