📄 unx30.htm
字号:
<HTML>
<HEAD>
<TITLE>UNIX Unleashed unx30.htm</TITLE>
<LINK REL="ToC" HREF="index.htm">
<LINK REL="Next" HREF="unx31.htm">
<LINK REL="Previous" HREF="unxpt6au.htm"></HEAD>
<BODY TEXT="#000000" LINK="#0000FF" VLINK="#800080" bgcolor=white>
<P><A HREF="unxpt6au.htm"><IMG SRC="bluprev.gif" WIDTH = 32 HEIGHT = 32 BORDER = 0 ALT="Previous Page"></A>
<A HREF="index.htm"><IMG SRC="bluprev.gif" WIDTH = 32 HEIGHT = 32 BORDER = 0 ALT="Home"></A>
</P><UL>
<LI>
<A HREF="#I1">30 — Source Control with SCCS and RCS</A></LI>
<UL>
<UL>
<UL>
<UL>
<LI>
<A HREF="#I3">By Rachel and Robert Startin</A></LI></UL></UL>
<LI>
<A HREF="#I4">What Is Source Control?</A></LI>
<LI>
<A HREF="#I5">Basic Source Control Concepts</A></LI>
<UL>
<LI>
<A HREF="#I6">Interacting with Source Control</A></LI>
<LI>
<A HREF="#I7">Locks—Mediating Conflict</A></LI>
<LI>
<A HREF="#I8">Revising the Trunk—Straight up the Tree</A></LI>
<LI>
<A HREF="#I9">Branches—Complicating the Tree</A></LI>
<LI>
<A HREF="#I10">Revision Numbers</A></LI>
<LI>
<A HREF="#I11">Merges—Controlling Parallel Changes</A></LI>
<LI>
<A HREF="#I12">Symbolic Names, Baselines, and Releases</A></LI>
<UL>
<LI>
<A HREF="#I13">Using Releases to Replace Symbolic Names</A></LI></UL></UL>
<LI>
<A HREF="#I14">Introduction to RCS</A></LI>
<UL>
<LI>
<A HREF="#I15">Interacting with RCS</A></LI>
<UL>
<LI>
<A HREF="#I16">Initial Revisions</A></LI>
<LI>
<A HREF="#I17">RCS files</A></LI>
<LI>
<A HREF="#I18">Checking Out a File</A></LI>
<LI>
<A HREF="#I19">Checking In a File</A></LI>
<LI>
<A HREF="#I20">Examining Revision Details and History</A></LI>
<LI>
<A HREF="#I21">rcsdiff</A></LI>
<LI>
<A HREF="#I22">Keywords</A></LI></UL>
<LI>
<A HREF="#I23">Locks—Mediating Conflict</A></LI>
<LI>
<A HREF="#I24">Branches—Complicating the Tree</A></LI>
<LI>
<A HREF="#I25">Merges—Controlling Parallel Changes</A></LI>
<LI>
<A HREF="#I26">Symbolic Names, Baselines, and Releases</A></LI></UL>
<LI>
<A HREF="#I27">Introduction to SCCS</A></LI>
<UL>
<LI>
<A HREF="#I28">Interacting with SCCS</A></LI>
<UL>
<LI>
<A HREF="#I29">Initial Revisions</A></LI>
<LI>
<A HREF="#I30">SCCS files</A></LI>
<LI>
<A HREF="#I31">Checking Out a File</A></LI>
<LI>
<A HREF="#I32">Checking In a File</A></LI>
<LI>
<A HREF="#I33">Examining Revision Details and History</A></LI>
<LI>
<A HREF="#I34">Keywords</A></LI></UL>
<LI>
<A HREF="#I35">Locks—Mediating Conflict</A></LI>
<LI>
<A HREF="#I36">Branches—Complicating the Tree</A></LI>
<LI>
<A HREF="#I37">Merges—Controlling Parallel Changes</A></LI>
<LI>
<A HREF="#I38">Extra SCCS Features</A></LI></UL>
<LI>
<A HREF="#I39">Using Source Control for Backups</A></LI>
<LI>
<A HREF="#I40">A Simple Example</A></LI>
<UL>
<LI>
<A HREF="#I41">Starting to Use Source Control</A></LI>
<UL>
<LI>
<A HREF="#I42">Creating an Empty Source Control File and Adding the Initial Revision</A></LI>
<LI>
<A HREF="#I43">Creating a Full Source Control File with Manually Supplied Comments</A></LI>
<LI>
<A HREF="#I44">Creating a Full Source Control File with Command Line Comments</A></LI></UL>
<LI>
<A HREF="#I45">Modifying Files</A></LI>
<UL>
<LI>
<A HREF="#I46">Lock, Modify, Check In</A></LI>
<LI>
<A HREF="#I47">Modify (Oops!), Lock, Check In—Recovering from a Mistake</A></LI></UL>
<LI>
<A HREF="#I48">Shipping a Prerelease</A></LI>
<UL>
<LI>
<A HREF="#I49">Recording a Configuration with RCS</A></LI>
<LI>
<A HREF="#I50">Using SCCS for a Prerelease</A></LI></UL>
<LI>
<A HREF="#I51">Release 1</A></LI></UL>
<LI>
<A HREF="#I52">A Complex Example</A></LI>
<UL>
<LI>
<A HREF="#I53">Beginning Changes for Release 2</A></LI>
<LI>
<A HREF="#I54">Creating Patches for Release 1 and Alpha</A></LI>
<LI>
<A HREF="#I55">Merging Patches into the Trunk</A></LI>
<UL>
<LI>
<A HREF="#I56">Merging with rcsmerge</A></LI>
<LI>
<A HREF="#I57">Merging with SCCS and merge</A></LI></UL>
<LI>
<A HREF="#I58">Receiving Patches from Others and Merging Them</A></LI>
<UL>
<LI>
<A HREF="#I59">Merging with co</A></LI>
<LI>
<A HREF="#I60">Using SCCS and merge</A></LI></UL>
<LI>
<A HREF="#I61">Requiring Proper Authorization for Changes (SCCS Only)</A></LI>
<LI>
<A HREF="#I62">Shutting Down Development on Release 1 (SCCS Only)</A></LI></UL>
<LI>
<A HREF="#I63">Using make with Source Control</A></LI>
<UL>
<LI>
<A HREF="#I64">Default Rules</A></LI>
<LI>
<A HREF="#I65">Rules Using Time Stamps</A></LI></UL>
<LI>
<A HREF="#I66">Summary</A></LI></UL></UL></UL>
<H1 ALIGN="CENTER">
<CENTER><A ID="I1" NAME="I1">
<BR>
<FONT SIZE=5><A ID="I2" NAME="I2"></A><B>30 — Source Control with SCCS and RCS</B>
<BR></FONT></A></CENTER></H1>
<H5 ALIGN="CENTER">
<CENTER><A ID="I3" NAME="I3">
<FONT SIZE=3><B>By Rachel and Robert Startin</B>
<BR></FONT></A></CENTER></H5>
<P>This chapter covers the basic concepts of source control. These concepts apply to almost any system that does source control and should help you even if you use a system for source control other than the ones described here. You will learn the specific
structure and commands used by two widely available source control systems: Revision Control System (RCS) and Source Code Control System (SCCS).
<BR></P>
<P>You will also learn, through examples, how source control can be used. One example covers the use of source control on a simple software project that has only a single active version. Another covers the complexity added when you continue to make
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -