Tools: MPW
Advanced Search
Apple Developer Connection
Member Login Log In | Not a Member? Support

MPW Command Reference


ProjectInfo

Built-in

SYNTAX

ProjectInfo [file1] [file2]…
[-a author | -af author] [-c pattern | -cf pattern] [-comments]
[-d dateExpression | -df dateExpression] [-f] [-log] [-latest]
[-m | -only] [-n name] [-newer | -update] [-project project] [-r]
[-s] [-t pattern]

DESCRIPTION

The ProjectInfo command displays information about a project. Used without options or parameters, this command gives you information on all revisions of every file in the project (that is, on every revision tree in the project).

For information on revisions of particular files (that is, only certain revision trees) within the project, use the file parameter. Specifying a file with this parameter generates information on all revisions of that file, but you can use options to filter the information you retrieve. For example, specifying -latest allows you to retrieve information on only the latest revision on the main trunk of each revision tree.

With the exception of the -comments option, ProjectInfo always operates on the current project. You can change the current project using the -project option to specify a different project name. The -comments option displays information about the specified file even if it is not a member of the current project.

The -log option allows you to display the project log, which contains a log of all changes to the project, such as all instances of the deletion of revisions and of the creation and deletion of symbolic names. It also displays all instances of checkouts canceled by using the CheckOut command's -cancel option.

INPUT

None

OUTPUT

ProjectInfo writes project information to standard output. The following template shows the format of this information:

Project name
  Filename,revision
  Author: author of current revision
  Status ("checked in" or "checked out"): date/time
  Task:
  [Comment:]

The first line states the name of the project to which the file or revision belongs. This name is listed only at the beginning of the file or revision list corresponding to that project.

The second line provides the filename and revision number (such as Quarks,3). A plus sign (+) following the revision number indicates that the revision is currently checked out. An asterisk (*) following the revision name indicates that it is a modified read-only file.

The third line gives the name of the author or owner of the revision and the fourth line shows its status: either "Checked in" or "Checked out." The date and time on the same line corresponds to the checkin or checkout date of that revision.

The task on the fifth line describes the task associated with that file or revision. The last line is an optional field included with the -comments option.

ALIAS RESOLUTION

This command does not resolve leaf aliases used as part of a pathname or filename. Finder alias files are not recognized by Projector.

STATUS

ProjectInfo can return the following status codes:

0

no errors

1

syntax error

2

execution error

3

system error

PARAMETERS

file1 [file2]…

Specifies one or more files for which information is retrieved. If you specify a filename (for instance, Neutrinos) for a file that belongs to a mounted project, ProjectInfo displays information on every revision of that file in the project.

If you specify a filename for a file that belongs to an unmounted project, ProjectInfo looks for a revision of that file in the project's checkout directory. In this case, information on the revision is retrieved from its 'ckid' resource.

Similarly, if you specify a pathname (for instance, :Neutrinos), ProjectInfo looks for a revision of that file in the project's checkout directory and retrieves information from its 'ckid' resource.

OPTIONS

-a author

Lists only revisions created by the specified author.

-af author

Lists only files created by the specified author.

-c pattern

Lists only those revisions whose comments contain pattern. The pattern can be a literal string or a regular expression enclosed in slashes (/).

-cf pattern

Lists only those files whose comments contain pattern. A pattern can be a literal string or a regular expression enclosed in slashes (/).

-comments

Displays the checkout data of the revision, followed by a full checkin history for that revision and its ancestors. This option allows you to display project information whether or not the project is mounted.

-d dateExpression

Lists only those revisions created on or within the specified range of dates. In addition to specifying files created on a certain date (date), you can also specify files created before or after that date, or during a certain range of dates. To do this, you use one of the following date expressions:

date

On the specified date

<date

Before but not including date

date

Before and including date

>date

After but not including date

≥date

After and including date

date1-date2

Between and including date1 and date2

A date used in a date expression can be specified using the currently selected format in the Date & Time Control Panel or using the MPW uniform format shown below

yyyymmdd hh:mm:ss  (Note: ◊ is Option-Shift-v.)

where yyyy, mm, and dd represent the year, month, and day; and hh, mm, and ss represent the hour, minute, and second. Note that when specifying the hour, the values 0 thru 11 indicate A.M. time while the values 12 thru 23 indicate P.M. time.

Note
Be sure to place either single or double quotation marks around dateExpression so that the MPW Shell does not interpret any of the special characters. •

-df dateExpression

Lists all revisions of those files whose latest modification date is on or within the specified range of dates. See -d for a description of how to compose a date expression that represents a modification date that is either on date, before or after date, or during a certain range of dates.

-f

Lists file information rather than revision information. In this case ProjectInfo displays information according to the following template:

Project name
  Filename
    Author:
    Creation date:
    Mod date:
    Free:

The fields are self-explanatory, with the exception of "Mod date," which is an abbreviation of "Modification date, " and "Free, " which can be followed by either Yes (for a file that is not currently checked out) or No (for one that is).

-latest

Lists only the latest revision on the main trunk.

-log

Prints the log information for the current or named project. This includes a record of the creation and deletion of public names and the deletion of revisions. These tasks are controlled by the NameRevisions, DeleteNames, and DeleteRevisions commands.

It also keeps track of all canceled checkouts for files in the current project. (See the CheckOut command's -cancel option.)

-m

Lists only modifiable files or revisions.

-n name

Lists revisions in the specified symbolic name. Remember that symbolic names represent a set of revisions and can be created by using NameRevisions.

In addition to specifying revisions represented by name, you can also specify revisions created either before or after the corresponding revisions in name. To do this, use one of the following forms:

<name

Before but not including name

name

Before and including name

>name

After but not including name

name

After and including name

Note
If any of the name relations are used (<, ≤, >, ≥), you must place quotation marks around name so that the MPW Shell does not interpret the special characters. •

-newer

Lists information for the latest revision of all files in the current project that are newer than their counterparts in the project's checkout directory. This includes revisions of files that are not in the project's checkout directory because ProjectInfo automatically considers them to be newer than files that do not exist.

Notice that this option retrieves information on the same revisions that are checked out under the CheckOut command's -newer option.

-only

Lists only information about projects and subprojects--not about files or revisions. Normally, ProjectInfo retrieves information on the current project and its subprojects, if any. To specify a different project, see -project.

-project project

Retrieves information on files in the specified project instead of in the current project. This project then becomes the current project.

-r

Recursively lists all subprojects. This causes ProjectInfo to retrieve information on every revision tree in the project and all of its subprojects.

Normally ProjectInfo provides information on revision trees in only the root-level project.

-s

Generates a short listing, including only project, file, and revision names. If you use this option in conjunction with -f, ProjectInfo lists only the filenames.

-t pattern

Lists only those revisions whose task contains pattern. A pattern can be a literal string or a regular expression enclosed in slashes (/).

-update

Lists information for the latest revision of all files in the current project that are newer than their counterparts in the project's checkout directory. This option is the same as -newer except that -update does not provide information on files that do not exist in the checkout directory.

Note
This option retrieves information on the same revisions that are checked out under the CheckOut command's -update option. •

EXAMPLES

In the following example, the project named SubAtomic contains two files: Quarks.c and Leptons.c. Using -latest, the command line

ProjectInfo Quarks.c Leptons.c -project SubAtomic -latest

provides information on the most recent revisions of these files. The output appears as follows. The Owner field that replaces the Author field for Quarks.c,4, indicates that the file is checked out to Christy. The Author field for Leptons.c,8 shows that Christy authored that revision.

SubAtomic∫
    'Quarks.c,4'
    Owner: Christy
    Checked out: Wed, May 8, 1991, 2:45 PM
    Task: Fix bug # 6 concerning velocity.
    'Leptons.c,8'
    Author: Christy
    Checked in: Thu, May 2, 1991, 10:55 PM
    Task: Add procedure to predict the trajectory.

The NameRevisions command allows you to create a symbolic name for a set of revisions. For example, alpha can be used for a set of revisions corresponding to an alpha release. The ProjectInfo command keeps track of, among other things, the creation of symbolic names. The command line

ProjectInfo -log

writes all logged information on the current project, as in this example:

SubAtomic∫
5/6/91 10:50 AM
nameRevisions ResearchAlpha 'Quarks.c,1' 'Leptons.c,2'

SEE ALSO

MountProject

UnmountProject

 
 


Last Updated July 2000