sccs-edit(1)

πŸ“¦ version 2022.10.16, in opensuse-leap 16.0

πŸ’… sccs-edit(1) β€” like, the actual manual page, but make it make sense

okay bestie, so this is a page from SchilyΒ΄s USER COMMANDS (yes that's the manual name, we're folding it in, you're welcome ✨), and it's all about sccs-edit β€” the command that gets you a version of a file you can actually touch. Let's go πŸ’–


🌸 NAME 🌸

sccs-edit β€” retrieves a version of a file for editing. literally its whole personality 🫢


✨ SYNOPSIS ✨

sccs edit [options] file1 .. filen

πŸ¦‹ DESCRIPTION πŸ¦‹

So. You wanna edit a file. sccs edit extracts a version of that file that's writable by you, and it creates a p.file in the SCCS subdirectory as a lock on the history β€” meaning nobody else can check that version in or out while you're in there. main character energy, honestly πŸ‘‘ (it's giving "reserved for me, no cap").

ID keywords come back in unexpanded form. edit accepts the same options as get, listed down below ⬇️. Peep sccs-get(1) if you want the whole lore about the get utility and the full list of ID keywords plus their definitions.

The tea β˜•: the edit subcommand is basically equivalent to `get -e`. that's it, that's the vibe.

πŸ’… OPTIONS πŸ’…

  • -asequence β€” retrieves the version matching the delta sequence number you named. this one's mostly for the SCCS comb command (see sccs-comb(1) 🧚). for us regular humans, -r is the easier way to pick a version. heads up: the -a option supersedes the -r option when you use both at once. periodt.
  • -b β€” creates a new branch. used together with the -e option to say the new delta should have a SID in a new branch. instead of incrementing the level for the version to be checked in, get indicates in the p.file that the delta to be checked in should either initialize a new branch and sequence (if there's no existing branch at the current level), or increment the branch component of the SID. ⚠️ if the b flag is not set in the s.file, this option gets ignored β€” like, literally no effect.
  • -c date-time
  • -cdate-time β€” retrieves the latest version checked in prior to the date and time you pass in as the date-time argument. the date-time form is:
yy[mm[dd[ hh[mm[ss]]]]]

units you leave out default to their maximum possible value β€” so -c7502 is the same as -c750228235959 😭. values of yy from 69βˆ’99 refer to the twentieth century, and values from 00βˆ’68 refer to the twenty-first century. any number of non-numeric characters may separate the various 2-digit components (go off, separators πŸ’€). if white-space characters show up, the date-time spec must be quoted.

there's also this form:

yyyy/[mm[dd[hh[mm[ss]]]]]

which refers to a 4-digit year and lets you specify a year outside the range 1969βˆ’2068. fancy 🌈

  • -g β€” gets the SCCS version ID without retrieving the version itself. it's the vibe check for a SID: use it to verify that a particular SID actually exists πŸ”₯
  • -i sid-list
  • -isid-list β€” specifies a list of deltas to include in the retrieved version. the included deltas get noted in the standard output message πŸ“. sid-list is a comma-separated list of SIDs. to specify a range of deltas, use a `βˆ’' separator instead of a comma, between two SIDs in the list.
  • -s β€” suppresses all output normally written on the standard output. but fatal error messages (which always go to the standard error, iconic) remain unaffected πŸ™ˆ.
  • -t β€” retrieves the most recently created (top) delta in a given release β€” for example: -r1 ⭐.
  • -r[sid] β€” retrieves the version corresponding to the indicated SID (delta).

okay so the SID for a given delta is a number, in Dewey decimal format, made of two or four fields: the release and level fields, and for branch deltas, the branch and sequence fields. for instance, if 1.2 is the SID, then 1 is the release and 2 is the level number. if 1.2.3.4 is the SID, then 3 is the branch and 4 is the sequence number. iykyk 🧠

you do not need to specify the entire SID to retrieve a version with get. when you omit -r altogether, or when you omit both release and level, get normally retrieves the highest release and level. if the d flag is set to an SID in the s.file and you omit the SID, get retrieves the default version indicated by that flag.

when you specify a release but omit the level, get retrieves the highest level in that release. if that release doesn't exist, get retrieves the highest level from the next-highest existing release πŸŽ€.

same deal with branches: if you specify a release, level and branch, get retrieves the highest sequence in that branch.

  • -x sid-list
  • -x[sid-list] β€” excludes the indicated deltas from the retrieved version. the excluded deltas get noted in the standard output message πŸ“. sid-list is a comma-separated list of SIDs. to specify a range of deltas, use a `βˆ’' separator instead of a comma, between two SIDs in the list.

πŸ“ EXAMPLES πŸ“

to edit the file xec.c in the current directory, call:

sccs edit xec.c

look at you go, bestie πŸ’œ


🌈 ENVIRONMENT VARIABLES 🌈

see environ(7) for descriptions of the following environment variables that affect the execution of sccs-edit(1): LANG, LC_ALL, LC_CTYPE, LC_MESSAGES, and NLSPATH.

  • SCCS_NO_HELP β€” if set, sccs edit will not automatically call help(1) with the SCCS error code in order to print a more helpful error message. scripts that depend on the exact error messages of SCCS commands should set the environment variable SCCS_NO_HELP and set LC_ALL=C. 🫢

πŸŽ€ ATTRIBUTES πŸŽ€

see attributes(7) for descriptions of the following attributes:

  • Availability β€” SCHILYdeveloper-build-sccs
  • Interface Stability β€” Committed

πŸ‘‘ SEE ALSO πŸ‘‘

sccs(1), sccs-add(1), sccs-admin(1), sccs-branch(1), sccs-cdc(1), sccs-check(1), sccs-clean(1), sccs-comb(1), sccs-commit(1), sccs-create(1), sccs-cvt(1), sccs-deledit(1), sccs-delget(1), sccs-delta(1), sccs-diffs(1), sccs-editor(1), sccs-enter(1), sccs-fix(1), sccs-get(1), sccs-help(1), sccs-histfile(1), sccs-info(1), sccs-init(1), sccs-istext(1), sccs-ldiffs(1), sccs-log(1), sccs-print(1), sccs-prs(1), sccs-prt(1), sccs-rcs2sccs(1), sccs-remove(1), sccs-rename(1), sccs-rmdel(1), sccs-root(1), sccs-sact(1), sccs-sccsdiff(1), sccs-status(1), sccs-tell(1), sccs-unedit(1), sccs-unget(1), sccs-val(1), what(1), sccschangeset(5), sccsfile(5).

that's a lot of friends, slay πŸ’€


πŸ’€ BUGS πŸ’€

None currently known. genuinely flawless, we love to see it ✨

mail bugs and suggestions to schilytools@mlists.in-berlin.de or open a ticket at https://codeberg.org/schilytools/schilytools/issues.

the mailing list archive may be found at:

https://mlists.in-berlin.de/mailman/listinfo/schilytools-mlists.in-berlin.de.

🧚 AUTHORS 🧚

sccs edit was originally written by Eric Allman at UCB in 1980. it was later maintained by various people at AT&T and Sun Microsystems. since 2006, it has been maintained by Joerg Schilling and the schilytools project authors. a whole lineage, honestly 🌸


⭐ SOURCE DOWNLOAD ⭐

the source code for SCCS is included in the schilytools project and may be retrieved from the schilytools project at Codeberg at

https://codeberg.org/schilytools/schilytools.

the download directory is

https://codeberg.org/schilytools/schilytools/releases.

aaaand that's the page!! πŸ’– written by Joerg Schilling, dated 2022/10/06, on the sccs-edit(1) page of SchilyΒ΄s USER COMMANDS manual β€” go forth and edit, bestie, you're gonna ate it πŸ¦‹πŸ’…
πŸ“¦ where this page comes from