Annotation of 43BSDReno/usr.bin/sccs/sccs.1, revision 1.1

1.1     ! root        1: .\" Copyright (c) 1983, 1990 The Regents of the University of California.
        !             2: .\" All rights reserved.
        !             3: .\"
        !             4: .\" Redistribution and use in source and binary forms are permitted provided
        !             5: .\" that: (1) source distributions retain this entire copyright notice and
        !             6: .\" comment, and (2) distributions including binaries display the following
        !             7: .\" acknowledgement:  ``This product includes software developed by the
        !             8: .\" University of California, Berkeley and its contributors'' in the
        !             9: .\" documentation or other materials provided with the distribution and in
        !            10: .\" all advertising materials mentioning features or use of this software.
        !            11: .\" Neither the name of the University nor the names of its contributors may
        !            12: .\" be used to endorse or promote products derived from this software without
        !            13: .\" specific prior written permission.
        !            14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
        !            15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
        !            16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
        !            17: .\"
        !            18: .\"     @(#)sccs.1     2.8 (Berkeley) 7/24/90
        !            19: .\"
        !            20: .Dd July 24, 1990
        !            21: .Os BSD 4.4
        !            22: .Dt SCCS 1
        !            23: .Os BSD 4.2
        !            24: .Sh NAME
        !            25: .Nm sccs
        !            26: .Nd front end for the
        !            27: .Li SCCS
        !            28: subsystem
        !            29: .Sh SYNOPSIS
        !            30: .Nm sccs
        !            31: .Op Fl r
        !            32: .Op Fl d Ar path
        !            33: .Op Fl p Ar path
        !            34: .Ar command
        !            35: .Op  flags
        !            36: .Ar
        !            37: .Sh DESCRIPTION
        !            38: .Nm Sccs
        !            39: is a front end to the
        !            40: .Li SCCS
        !            41: programs
        !            42: that
        !            43: helps them mesh more cleanly
        !            44: with
        !            45: the rest of UNIX.
        !            46: It
        !            47: also includes the capability to run
        !            48: .Dq set user id
        !            49: to another user
        !            50: to
        !            51: provide additional protection.
        !            52: .Pp
        !            53: Basically,
        !            54: .Nm sccs
        !            55: runs the command with the specified
        !            56: .Ar flags
        !            57: and
        !            58: .Ar args .
        !            59: Each argument is normally modified to be prepended with
        !            60: .Dq Li SCCS/s. .
        !            61: .Pp
        !            62: Flags to be interpreted by the
        !            63: .Nm sccs
        !            64: program must be before the
        !            65: .Ar command
        !            66: argument.
        !            67: Flags to be passed to the actual
        !            68: .Li SCCS
        !            69: program must come after the
        !            70: .Ar command
        !            71: argument.
        !            72: These flags are specific to the command and
        !            73: are discussed in the documentation for that command.
        !            74: .Pp
        !            75: Besides the usual
        !            76: .Li SCCS
        !            77: commands,
        !            78: several
        !            79: .Dq pseudo-commands
        !            80: can be issued.
        !            81: These are:
        !            82: .Tw Fl
        !            83: .Tp Ic edit
        !            84: Equivalent
        !            85: to 
        !            86: .Dq Li get \-e .
        !            87: .Tp Ic delget
        !            88: Perform a delta on the named files and
        !            89: then get new versions.
        !            90: The new versions will have id keywords expanded, and
        !            91: will not be editable.
        !            92: The
        !            93: .Fl m ,
        !            94: .Fl p ,
        !            95: .Fl r ,
        !            96: .Fl s ,
        !            97: and
        !            98: .Fl y
        !            99: flags will be passed to
        !           100: .Nm delta ,
        !           101: and the 
        !           102: .Fl b,
        !           103: .Fl c ,
        !           104: .Fl e ,
        !           105: .Fl i ,
        !           106: .Fl k ,
        !           107: .Fl l ,
        !           108: .Fl s ,
        !           109: .\" anybody who has a bad xterm which is almost anyone
        !           110: .if n \{\
        !           111: .      br
        !           112: .\}
        !           113: and
        !           114: .Fl x
        !           115: flags will be passed to get.
        !           116: .Tp Ic deledit
        !           117: Equivalent
        !           118: to
        !           119: .Nm delget
        !           120: except that the
        !           121: .Nm get
        !           122: phase includes the
        !           123: .Fl e
        !           124: flag.
        !           125: This
        !           126: option is useful for making a
        !           127: .Em checkpoint
        !           128: of your current editing phase.  The same flags will be passed to delta
        !           129: as described above, and
        !           130: all the flags listed for
        !           131: .om get
        !           132: above except
        !           133: .Fl e
        !           134: and
        !           135: .Fl k
        !           136: are
        !           137: passed to
        !           138: .Nm edit .
        !           139: .Tp Ic create
        !           140: Creates
        !           141: an
        !           142: .Li SCCS
        !           143: file ,
        !           144: taking
        !           145: the initial contents from the file of the same name.
        !           146: Any
        !           147: flags to
        !           148: .Nm admin
        !           149: are accepted.  If the creation is successful,
        !           150: the files are renamed with a comma on the front.
        !           151: These should be removed when you are convinced that the
        !           152: .Li SCCS
        !           153: files
        !           154: have been created successfully.
        !           155: .Tp Ic fix
        !           156: Must
        !           157: be followed by a
        !           158: .Fl r
        !           159: flag.
        !           160: This command essentially removes the named delta, but
        !           161: leaves you with a copy of the delta
        !           162: with the changes that were in it.  It
        !           163: is useful for fixing small compiler bugs, etc.
        !           164: Since it doesn't leave audit trails, it should be used carefully.
        !           165: .Tp Ic clean
        !           166: This routine removes everything from the current directory
        !           167: that can be recreated from SCCS files.
        !           168: It will not remove any files being edited.
        !           169: If the
        !           170: .Fl b
        !           171: flag is given, branches are ignored in the determination of
        !           172: whether they are being edited; this
        !           173: is dangerous if you are keeping the branches in the
        !           174: same directory.
        !           175: .Tp Ic unedit
        !           176: This
        !           177: is the opposite of an
        !           178: .Nm edit
        !           179: or
        !           180: a
        !           181: .Dq Li get \-e .
        !           182: It should be used with extreme caution, since
        !           183: any changes you made since the get will be irretrievably lost.
        !           184: .Tp Ic info
        !           185: Gives a listing of all files being edited.
        !           186: If the
        !           187: .Fl b
        !           188: flag
        !           189: is given, branches (i.e.,
        !           190: .Cx Li SID
        !           191: .Cx \&\'s
        !           192: .Cx
        !           193: with two or fewer components)
        !           194: are ignored.  If the
        !           195: .Fl u
        !           196: flag is given (with an optional argument) then
        !           197: only files being edited by you (or the named user) are listed.
        !           198: .Tp Ic check
        !           199: Like
        !           200: .Nm info
        !           201: except that nothing is printed if nothing is being edited, and
        !           202: a non-zero exit status is returned if anything is being edited.
        !           203: The intent is to have this included in an
        !           204: .Em install
        !           205: entry in a makefile to insure that everything is included into the
        !           206: .Li SCCS
        !           207: file before a version is installed.
        !           208: .Tp Ic tell
        !           209: Gives a newline-separated list of the files being edited
        !           210: on the standard output.  Takes the
        !           211: .Fl b
        !           212: and
        !           213: .Fl u
        !           214: flags like
        !           215: .Nm info
        !           216: and
        !           217: .Nm check .
        !           218: .Tp Ic diffs
        !           219: Gives a
        !           220: .Nm diff
        !           221: listing between the current version of the
        !           222: program(s) you have out for editing and the versions in
        !           223: .Li SCCS
        !           224: format.
        !           225: The
        !           226: .Fl r ,
        !           227: .Fl c ,
        !           228: .Fl i ,
        !           229: .Fl x ,
        !           230: and
        !           231: .Fl t
        !           232: flags are passed to
        !           233: .if n \{\
        !           234: .      br
        !           235: .\}
        !           236: .Nm get ;
        !           237: the
        !           238: .Fl l ,
        !           239: .Fl s ,
        !           240: .Fl e ,
        !           241: .Fl f ,
        !           242: .Fl h ,
        !           243: and
        !           244: .Fl b
        !           245: options are passed to
        !           246: .if n \{\
        !           247: .      br
        !           248: .\}
        !           249: .Nm diff .
        !           250: The
        !           251: .Fl C
        !           252: flag is passed to
        !           253: .Nm diff
        !           254: as
        !           255: .Fl c .
        !           256: .Tp Ic print
        !           257: This command prints out verbose information
        !           258: about the named files.
        !           259: .Pp
        !           260: .Tp Fl r
        !           261: Runs
        !           262: .Nm sccs
        !           263: as the real user rather than as whatever effective user
        !           264: .Nm sccs
        !           265: is
        !           266: .Dq Li set user id
        !           267: to.
        !           268: .Tp Fl d
        !           269: Specifies a root directory for the
        !           270: .Li SCCS
        !           271: files.
        !           272: The default is the current directory.
        !           273: If environment variable
        !           274: .Ev PROJECT
        !           275: is set,
        !           276: it will be used to determine the 
        !           277: .Fl d
        !           278: flag.
        !           279: .Tp Fl p
        !           280: flag defines the pathname of the directory in which the
        !           281: .Li SCCS
        !           282: files will be found;
        !           283: .Dq Li SCCS
        !           284: is the default.
        !           285: The
        !           286: .Fl p
        !           287: flag
        !           288: differs from the
        !           289: .Fl d
        !           290: flag
        !           291: in that the
        !           292: .Fl d
        !           293: argument is prepended to the entire pathname and the
        !           294: .Fl p
        !           295: argument is inserted before the final component of the pathname.
        !           296: For example,
        !           297: .Dq Li sccs \-d/x \-py get a/b
        !           298: will convert to
        !           299: .Dq Li get /x/a/y/s.b .
        !           300: The intent here is to create aliases such as
        !           301: .Dq Li alias syssccs sccs -d/usr/src
        !           302: which
        !           303: will be used as
        !           304: .Dq Li syssccs get cmd/who.c .
        !           305: .Pp
        !           306: Certain
        !           307: commands (such as
        !           308: .Nm admin  )
        !           309: cannot be run
        !           310: .Dq Li set user id
        !           311: by all users, since this would allow anyone to change the authorizations.
        !           312: These commands are always run as the real user.
        !           313: .Sh EXAMPLES
        !           314: To get a file for editing,
        !           315: edit it,
        !           316: and produce a new delta:
        !           317: .Pp
        !           318: .Dl sccs get \-e file.c
        !           319: .Dl ex file.c
        !           320: .Dl sccs delta file.c
        !           321: .Pp
        !           322: To get a file from another directory:
        !           323: .Pp
        !           324: .Dl sccs \-p/usr/src/sccs/s. get cc.c
        !           325: .Pp
        !           326: or
        !           327: .Pp
        !           328: .Dl sccs get /usr/src/sccs/s.cc.c
        !           329: .Pp
        !           330: To make a delta of a large number of files
        !           331: in the current directory:
        !           332: .Pp
        !           333: .Dl sccs delta *.c
        !           334: .Pp
        !           335: To get a list of files being edited that are not on branches:
        !           336: .Pp
        !           337: .Dl sccs info \-b
        !           338: .Pp
        !           339: To delta everything being edited by you:
        !           340: .Pp
        !           341: .Dl sccs delta \`sccs tell \-u\`
        !           342: .Pp
        !           343: In a makefile, to get source files
        !           344: from an
        !           345: .Li SCCS
        !           346: file if it does not already exist:
        !           347: .Pp
        !           348: .Dl SRCS = <list of source files>
        !           349: .Dl $(SRCS):
        !           350: .Dl \&\tsccs get $(REL) $@
        !           351: .Sh ENVIRONMENT
        !           352: .Tw Ar
        !           353: .Tp Ev PROJECT
        !           354: The PROJECT environment variable is checked by the
        !           355: .Fl d
        !           356: flag.  If
        !           357: it begins with a slash, it is taken directly; otherwise,
        !           358: the home directory of a user of that name is
        !           359: examined for a subdirectory
        !           360: .Dq Li src
        !           361: or
        !           362: .Dq Li source .
        !           363: If such a directory is found, it is used.
        !           364: .Tp
        !           365: .Sh SEE ALSO
        !           366: .Xr what 1
        !           367: .Xr admin SCCS ,
        !           368: .Xr chghist SCCS ,
        !           369: .Xr comb SCCS ,
        !           370: .Xr delta SCCS ,
        !           371: .Xr get SCCS ,
        !           372: .Xr help SCCS ,
        !           373: .Xr prt SCCS ,
        !           374: .Xr rmdel SCCS ,
        !           375: .Xr sccsdiff SCCS ,
        !           376: .br
        !           377: Eric Allman,
        !           378: .Em An Introduction to the Source Code Control System
        !           379: .Sh HISTORY
        !           380: .Nm Sccs
        !           381: appeared in 4.3 BSD.
        !           382: .Sh BUGS
        !           383: It should be able to take directory arguments on pseudo-commands
        !           384: like the
        !           385: .Li SCCS
        !           386: commands do.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.