RCS工具
下列為三個 RCS 中最重要的指令:
ci 將檔案放入 RCS 的控制下。
co 將檔案取出。
rcs 設定或是改變 RCS 檔案的參數。
有兩個可提供 RCS 檔案資訊的指令:
ident 從 RCS 檔案中取出關鍵字之值。
rlog 顯示某個 RCS 檔的改版概要說明。
要比較 RCS 檔可用下列指令:
merge 將兩個檔案的修改內容併入第三個檔 案。
rcsdiff 印出兩個版本之間的不同。
rcsmerge 將兩個 RCS 檔案中的修改內容併入第三個 RCS 檔案。
下列指令用來管理組態。不過因為這些指令非必要指令,所以有時不會安裝。
rcsclean 將未改變的工作檔案刪除。
rcsfreeze 將設定組態的檔案予以標記。
基本操作方式
一般而言,RCS 檔案會放在 RCS 目錄中。所以第一步就是 :
mkdir RCS
接著,只要把所要放入 RCS 控制之下的檔案以以下指令加入即可:
ci file
這樣會在 RCS 目錄中產生一個叫做 file,v 的檔案。file,v 稱為 RCS 檔案。這個檔案內會儲存以後該檔案所有的更動資 料。第一次執行 ci 時,系統會要求輸入該檔案的描述。然後將檔案放入 RCS 檔中,然後將版號設定為 1.1。
若要編輯新的版號,則用下列指令將檔案取出:
co -l file
這樣會使得 RCS 將檔案從 RCS 檔中取出來。使用者必須將檔案用 l 選項鎖定,這樣才能確定使用者可對該檔案進行讀寫。這個檔案稱為工作檔。每次完成編輯後可以 用 ci 指令 將檔案再送回 RCS 中:
ci file
這次,系統會提示使用者輸入所修改的紀錄,然後版號就設定為 1.2。注意將檔案送入 RCS後,通常工作檔就會刪除。若要取出唯讀的工作 檔,則不要加上 -l 選項來鎖定它:
co file
通常若要將檔案印出來或只是單純做搜尋或編譯用時,就可用這個指令取出檔案。若要直接取用 上一個 ci/co,則可用下列指令:
ci -u file
這樣會把檔案放入 RCS 中,然後立刻取出一份唯讀的工作檔案。要比較工 作檔案和 RCS 中最新版本的檔案,可用下列指令:
rcsdiff file
另一個有用的指令就是 rlog,可用來顯示記錄大綱。系統管理員可以用 rcs 指令來建立 RCS系統的預設行為。
一般 RCS 規格
本節討論重點如下:
. 關鍵字替代
. 版本編號
. 指定日期
. 指定狀態
. 標準選項和環境變數
-------------------------------------------------
關鍵字替代
RCS 可以將關鍵字變數放入工作檔案中。這些變數接著會展開成版本註記。使用者可將這些註記當作內含的註解,或是輸出時所印出的文字字串。 要從關鍵字替代來產生版本註記,請依下列步驟進行:
1. 在工作檔案中打入下列任一關鍵字。
2. 將檔案放入 RCS 中。
3. 將檔案再次取出。取出時,co 指令會將每個關鍵字展開成其對應的值。也就是說,co
會將:
$keyword$
替代成
$keyword:value$
4. 接下來的每次放入和取出的指令,都會將每個關鍵字 做更新的動作。除非指定其動作,否則新的值會取代原來的值。
注意:RCS 第 5 版中,許多指令都加入了 -k 選項,可在關鍵字替代上更有彈性。
關鍵字
$Author$ 將版本放入 RCS 的使用者名稱。
$Date$ 放入 RCS 時的日期與時間。
$Header$ 檔案標頭,包括了 RCS 檔案的完整路徑、版本號碼、日期、作者、狀態(若鎖定時,還包括鎖定本檔案的使用者名 稱)。
$Id$ 和$ Header$ 一樣,但不包括檔案的完整路徑。
$Locker$ 鎖定本版本的使用者名稱。若檔案未鎖定,這個值就保持空白。
$Log$ 這個訊息是在放入 RCS 時所打入的檔案描述。字串之前還加上了 RCS 檔名、版本號碼、作者和日期時間。記錄訊息會累 積而不會覆寫過去。
$RCSfile$ RCS 檔案的名稱,不包括其路徑。
$Rivision$ 指定的版本號碼。
$Source$ RCS 檔案名稱,包括其路徑。
$State$ 以 ci 或 rcs 指令的 -s 選項所指定的狀態。
範例
先假設 /projects/new/chater3 這個檔案是由 daniel 這位使用者放入 RCS 後又取出的。下列為本檔案的第二個版本中所有的 關鍵字替代的值:
<<<<<< code >>>>>>
版本編號
若不指定時,RCS 會假設所使用的版本皆為最新的版本。 有些指令包括了 -r 選項可用來指定所要使用的版本號碼。也有些指令可以接受版本號碼作為參數。(這些指令在指令解說中,版本號碼會以 [R] 表示)版本號碼包括四個部分:release、level、branch 和 sequence。(譯按:在此這些名詞不做翻譯,以免造成困 擾)但最常用的是 release 和 level。比如,可用下列指令取出 1.4 版的檔案:
co -l -r1.4 ch01
在重新放入時,新的版本號碼就是 1.5 版。但若編輯的檔案放入時,要指定為下一個 release時,可使用下列指令:
ci -r2 ch01
這樣就會產生 2.1 版。還可以產生前期版本的 branch。下列指令會產生 1.4.1.1 版:
ci -r1.4.1 ch01
版本號碼不只可用號碼來表示。也可將字串設定為版本號碼(雖然這樣一樣稱為「號碼」),只要 透過 ci 或 rcs 指令的 -n 選項即可。也可以將這個字串放入任何可接受版本 號碼當作參數的指令來使用。比如說,使用者可將所有的程式碼都用同一個標籤放入 RCS 中,而不管目前版本號碼為何:
ci -u -nPrototype *.c
另外,RCS 5.6 版中可以讓使用者指定 $,表示版本號碼將從工作檔案中的關鍵字取得。比 如:
rcsdiff -r$ ch01
這個指令會將 ch01 和放入 RCS 的那個版本做比較。也可以將符號和名稱結合。下 面的指令:
rcs -nDraft:$ ch*
會將檔案名稱加上一個字串。
-------------------------------------------------
指定日期
不同的版本會記錄存入 RCS 的時間和日期。有許多關鍵字字串包括了日期和時間。ci、co和 rlog 也有選項可接受時間和日期。RCS 預設使用下列的日期時間格式:
1995/10/16 02:00:00 (年 / 月 / 日 時)
預設的時區為格林威治時間 GMT,也稱為 UTC。日期可以指定為任意格式。這樣就可以指定使用 多種不同的日期格式。下列為幾種常用的格式:
假設今天時間為(1995 年十月 16 日)
<<<<<< code >>>>>>
大寫或小寫的 lt 表示本地時間。第三行為 ctime 格式(加上 LT)。第四行是 date 指令的格式。
-------------------------------------------------
指定狀態
在一些狀況之下(尤其是程式設計的環境下),我們必須知道一些版本的狀態。 RCS 檔案有一個字串描述其狀態。預設的狀態為 Exp(實驗狀態)。其他包括了 Stab(stable) 或是 Rel(release)。這些字串通常是使用者自行定義的,對程式內部 來說並沒有意義。有些關鍵字字串在值中儲存其狀態。另外,ci、co、rcs 和 rlog 都可在選項中加上狀態作為參數。
-------------------------------------------------
標準選項
RCS 5.6 版定義了一個環境變數 RCSINIT,這個環境變數是用來設定 RCS 指令所使用的預設選項。若將 RCSINIT 設定為以空白隔開的選項列,則在使用任何 RCS 指令時,這些選項都會先加在使用者所指定的選項 之前。有三個常用的選項可放入 RCSINIT 中:-q、-V 和 -x。這些可視為是標準選項,因為大部分的 RCS 指令都可用這些選項。請注意,V 在 RCS 第 5 版後才有,而 -x 則在 RCS 5.6 以後才有。
-q[R] 不輸出診斷訊息。R 指定檔案的版本號碼。
-Vn 模擬 RCS 第 n 版。若要在不同系統之間交換檔案,則這個選項十分實用。n 之值可以是 3、4 或 5。
-xsuffixes 指定不同的檔名後置字串。每個後置字串之間用「/」來分隔開。在UNIX作業系統中,RCS檔案名稱通常是以 「,v」 做結尾。而 -x 選項可以讓一些不能使用「,」字元作為檔名的系統也使用 RCS。
比如,若要將工作檔案放入 RCS 系統中時:
ci -x,v/ ch01 (第二個後置字串為空白)
會以下列順序搜尋 RCS 檔:
RCS/ch01,v
ch01,v
RCS/ch01
-------------------------------------------------
SCCS 轉換指南
RCS 中有許多功能和 SCCS 中的指令相同。下面是一個很簡單的對照表:
SCCS RCS
<<<<<>>>>>
-------------------------------------------------
指令解說
關於關鍵字的語法、版本號碼、日期、狀態和標準選項,請見前面的說明。
--------------------------------------
ci [options] files
將檔案放入 RCS 中。ci 會將指定的工作檔案 files 放入其對應的 RCS 檔案中。一般來說,ci會在檔案存入後將工作檔案刪除。若沒有 RCS 檔案,則工作檔就是第一個版本。這種情況下,會建立 RCS 檔案並提示使用者鍵入該檔案的說明。若有 RCS 檔案,ci 會將版本號碼更新,然後提示使用者輸入更動的紀 錄。 RCS 5.6 版中,若工作檔案沒有更動,則會恢復成上一個版本號碼。一些較舊的 RCS 中,最後可能要存入一個沒有更動過的新版本。
-u、-l 和 -r 三個選項一次只能使用一個。-u 選項會產生一個唯讀的工作檔,可以用作列印或是搜 尋、編譯等工作。-l 則先存入檔案後馬上取出檔案,並加以鎖定。這可以讓使用者更新版本,然後繼續編輯的動作。(比如長時間編輯時)-r 可以指定不同的 release 號碼。ci 可以接受標準的 -q、-V 和 -x 選項。
Options
-d[date] 將目前存入的檔案日期標為 date,若不指定 date,則使用前次修改時的日期時間。
-f[R] 不管是否有更動都將檔案存入 RCS 中。
-I[R] 互動模式;不論輸入是否為終端機,都提示使用者輸入(比如在指令的 pipe 中)。-I 在 RCS 第 5 版後才有。
-k[R] 利用檔案中的關鍵字設定版本號碼、產生日期、狀態和作者,而不經由環境變數取得。-k 在發展大型程式時,若要發表新的版本時十分實 用。用檔案內的關鍵字串就可以對檔案的屬性進行設定。
-l[R] 將檔案存入後執行 co -l。這樣會產生一份鎖定的工作檔案,版本號碼為下 一版。
-mmsg 用 msg 字串當作所有存入檔案的紀錄訊息。存入多個檔案 時,ci 詢問 是否重複使用上一個檔案的紀錄訊息。-m 選項則可跳過詢問過程。
-M[R] 設定工作檔案的修改時間為取出版本 的修改時間。-M 選項可能會造成 make 上的困擾,需小心使用。此功能在 RCS 5.6 以後才有。
-nname 將 name 設定為下一個版本號碼
-Nname 和 -n 一樣,但取代上一個 name。
-r[R] 將檔案以 R 為版本號碼存入。
-sstate 設定存入檔案的狀態。
-tfile 將 RCS 檔案的描述以 file 的內容代替。在 RCS 第 5 版中,只有在建立新的 RCS 檔案時可用。
-t-string 將 RCS 檔案描述以 string 字串代替。在 RCS 第 5 版中,只有在建立新的 RCS檔案時可用。
-u[R] 存入檔案後,執行 co -u。這樣會產生一個唯讀的工作檔案。
-wuser 將存入的檔案作者欄設定為 user。
範例:
將每一個檔案用同一個記錄訊息存入:
ci -m'First round edits' chap*
存入 prog.c 的更動,然後保留一份唯讀的工作檔案。
ci -u prog.c
重新設定 level 為 2;將 2.1 版指定為 Prototype:
ci -r2 -nPrototype prog.c
--------------------------------------
co [options] files
取出之前放入 RCS 之檔案,並將檔案放入工作檔案中。若指定 -p 選項則輸出到標準輸出上。如果要編輯檔案後再存入,則要指定 -l 選項來鎖定這個檔案。co 可以接受標準選項 -q、-V和 -x。
Options
-ddate 取出 date 之前的最新版本。
-f[R] 強迫覆寫工作檔案。
-I[R] 互動模式;就算標準輸入不是終端機 也會提示使用者輸入。(RCS 第五版以後才有)
-jR2:R3 和 rcsmerge 的功能一樣。R2 和 R3 所指定的兩個版本的改變會合併到第三個檔案中。第 三個檔案可以是工作檔案或是另一個版本號碼。(用其他選項指定的 R)
-kc 根據 c 旗標來展開關鍵字。c 之值可以為下列任一:
kv 將關鍵字展開為關鍵字和其值(預設)。只有在 ci -l 或是 co -l 才會插入鎖定檔案的使用者名稱。
kvl 和 kv 一樣,但加上鎖定檔案的使用者名稱。
k 將關鍵字展開,不加上其值。拿來比較檔案時,可用 來忽略一些細微的差異。
o 將關鍵字展開為前一版中所儲存的關 鍵字和其值。在一些二元檔中,若不允許字串改變時,就可用這個選項。
v 將關鍵字展開為其值,而不加上關鍵 字串。這樣以後的版本就無法在展開關鍵字了,不建議使用。
-l[R] 和 -r 一樣,但會將取出的檔案鎖定。
-M[R] 設定工作檔案的修改時間為取出版本 的修改時間。-M 選項可能會造成 make 上的困擾,需小心使用。此功能在 RCS 5.6 以後才有。
-p[R] 將取出的檔案送往標準輸出,不寫入檔案中。可用來做重導向或是 filter 用。
-r[R] 取出最新版本。若指定 R 的話,取出小於 R 的最新版本。
-sstate 設定存入檔案的狀態。
-u[R] 和 r 一樣,不過若之前鎖定過檔案,則會將檔案解除鎖 定。
-w[user] 取出由目前使用者或是指令中所指定 的 user 所存 入的版本。
範例:
將 file 的最新版本加以排序:
co -p | sort
將所有大寫檔名的檔案都取出後鎖定以供編輯用:
co -l [A-Z]*
請注意,如果目前目錄內沒有工作檔案,則無法進行檔名展開。所以這個例子只有在之前執行過 ci -u 的 檔案才可使用。
最後,下列這些指令是用來取出某一組 RCS 檔案的工作檔案:
co -r3 *,v release 3 的最新版本檔案。
co -r3 -wjim *,v 和上面一樣,但只取出由 jim 存入的檔案。
co -d'May 5, 2 pm LT' *,v 取出在這個日期之前所修改的最新版 本。
co -rPrototype *,v 以 Prototype 為名的最新版本。
--------------------------------------
ident [options] files
從檔案中取出關鍵字及其值。files 可以是文字檔、object 檔或是 dump 檔案。
Options
-q 若沒找到關鍵字則不印出錯誤訊息。
範例:
若 prog.c 已編譯過,且內含下列這行:
char rcsID[] = "$Author: george $
則輸出如下:
<<<<<< code >>>>>>
將所有 RCS 檔案中的關鍵字印出(不印出警告訊息)。
co -p RCS/*,v | ident -q
--------------------------------------
merge [options] file1 file2 file3
利用 diff3 將三個檔案的內容作比較和合併。file2 是原來的檔案,file1 是正確的修改版,而 file3 是另一個修改版。merge 會將 file2 和 file3 的差異找出來,然後插入 file1 中。若 file1 和 file 同時有同樣的行,則 merge 會顯示警告訊息,然後把兩行都標明出來插入file1。插入資料如下:
<<<<<< code >>>>>>
最後必須在 file1 之內選擇其一,將另一個刪除。merge 的傳回值可以是 0(無重複行)或是 1(有些重複行)或是 2(不明錯誤)。見 rcsmerge
Options
-L text1 將重複行中的 "<<<<<<改為 "<<<<<<。
-L text3 將重複行中的 "<<<<<<改為 "<<<<<<。
-p 將合併過的檔案送往標準輸出而非 file1。
-q 對於重複行直接插入但不顯示警告訊息。
--------------------------------------
rcs [options] files
用來設定或改變 RCS 檔案的屬性或是預設性質。rcs 可用來設定強制鎖定(-L)、刪除版本(-o)、以及忽略 co 所設定的鎖定(-l 與 -u)。RCS 檔案都有一個存取列表(用 -a 建立);任何在表內的使用者都可以執行 rcs。這個檔案通常是空白的,表示每個人都可以使用 rcs。另外,如果使用者就是 rcs 檔案的擁有者、特權使用者或是執行 rcs 時加上 -i 選項,就可以執行 rcs。rcs 指令可以接受標準的選項 -q、-V 和 -x。
Options
-ausers 將 users(以「,」分開)加到存取列表中。
-Aotherfile
將 otherfile 的存取列表接在 files 的存取列表後。
-b[R] 將預設 branch 設定為 R。若不指定 R,則設定為目前版本中的最高 branch。
-c's' 將 $Log 關鍵字的註解字元設定為字串 s。預設狀況下,co 會將 $Log 關鍵字展開成由「#」開頭的註解行。可以將這個字串設定為 .\" 供 troff 使用,或是設定為 * 供 C 程式使用(你必須自行在$Log的前與後加上「/*」與「*/」)。
-e[users] 清除所有使用者,或是指清除由 users 指定的使用者。
-i 建立 RCS 檔但不放入版本號碼。
-I 互動模式;就算標準輸入不是終端機 也會提示使用者輸入。(RCS 第五版以後才有)
-kc 用 c 當作預設的關鍵字展開方式。(c 之值請見 co 指令)-kkv 會恢復預設展開方式;其他的展開方式和第 4 版之前的都不相容。
-I[R] 將版本號碼 R 的檔案予以鎖定,或是鎖定最新版。若不小心用 co 而不是用 co -l取出檔案時,這個選項會自動將檔案鎖定。
-L 打開強迫鎖定(預設)。也就是說,不論任何使用者,都必須用 co -l 來鎖定檔案後才可以編輯該檔案。若要進行檔案分 享時,最好啟動強迫鎖定選項。
-mR:msg 將版本號碼 R 的紀錄訊息以 msg 字串代替。(RCS 5.6 之後才有)
-nflags 加入或是刪除版本號碼和名稱之間的關連。flags 之值如下:
name:R 將 name 和版本號碼 R 之間建立關連。
name: 將 name 指定為最新版本。
name 刪除 name 的關連。
-Nflags 和 -n 一樣,不過會覆寫目前的 name 設定。
-oR_list 將 R_list 中所列出的版本號碼檔案刪除。R_list 可指定為:R1, R1-R2, R1-或是 -R2。若加上 branch 號碼,則只會將這個 branch 上的最新版刪除。RCS5.6 以後將範圍分隔字元改為「:」,不過還是可以用「-」。
-sstate[:R] 將版本號碼 R 或是最新版的狀態設定為 state 字串。
-tfile 將 RCS 檔案的描述以 file 的內容代替。若不指定 file,則以標準輸出代替。
-t-string 將 RCS 檔案描述以 string 字串代替。
-u[R] 和 -l 的動作剛好相反。將之前用 co -l 取出的檔案予以解除鎖定。若是別人取出的檔案, 則用這個指令的使用者必須聲明其解鎖理由。這個理由會用電子郵件寄給原來鎖定檔案的使用者。
-U 設定為不強迫鎖定。除了檔案所有人 外,其他人都要用 co -l 才能編輯檔案。(見 -L)
範例:
將 To_customer 和所有最新版本的 RCS 檔案連結起來:
rcs -nTo_customer: RCS/*
將三個使用者加入 beatle_deals 的存取列表中:
rcs -ageorge,paul,ringo beatle_deals
將 1.2 到 1.5 版刪除:
rcs -o1.2-1.5 doc
將 RCS 檔案的描述用變數內容來代替:
echo "$description" | rcs -t file
--------------------------------------
rcsclean [options] [files]
雖然是 RCS 的一部份,但這個指令並非必要指令,所以有些系統上不會安裝這個指令。rcsclean 會將取出的檔案拿來和原來的 RCS 檔案的最新版本做比較(或是指定的版本號碼R)。若無差別,則將工作檔案刪除(用 rcsdiff 來找出其差異所在)。rcsclean 用於 makefile時相當好用。比如說,可以將整個目錄變為統一的 版本。執行 rcsfreeze 之前也可先執行rcsclean 來清除多餘的檔案。rcsclean 可接受標準選項 -q、-V 和 -x。
Options
-kc 比較檔案時,將關鍵字以 c 方式展開。(見指令 co 有關 c 的說明)。
-n[R] 顯示指令執行結果,但不實際執行。
-r[R] 和版本號碼 R 的檔案作比較。R 可以是其他選項的參數,所以其實可以不用 -r 選項。
-u[R] 若指定的版本和工作檔案相同,則將該版本檔案解除鎖定。
範例:
將未改變過的程式和標頭檔刪除:
rcsclean *.c *.h
--------------------------------------
rcsdiff [options] [diff_options] files
用 diff 來比較兩個版本之間的差異。 用 -r 來指定版本,其形式如下:
指定的版本數 比較方式
------------------------------------------
無 將工作檔案和最新版本做比較。
一個 將工作檔案和指定的版本做比較。
兩個 將兩個版本做比較。
rcsdiff 接受標準的選項 -q、-V 和 -x。也可加上任何 diff 所使用的選項(diff_options)。rcsdiff 的傳回值可以是 0(無差別)、1(有差別)或是 2(不明錯誤)。
Options
-kc 比較檔案時,將關鍵字以 c 方式展開。(見指令 co 有關 c 的說明)。
-rR1 用 R1 版本來做比較。
-rR2 用 R2 版本來做比較(必須指定 R1 才可再指定 R2)。
--------------------------------------
rcsfreeze [name]
這也是個非必要的指令,系統內可能不會安裝。rcsfreeze 會將整個存入的 RCS 檔指定一個名稱。通常用於將一整組檔案當作一個 組態使用時。預設的 name 是 C_n, n 每次執行 rcsfreeze都會自動加 1。
--------------------------------------
rcsmerge [options] file
將兩個檔案合併到第三個檔案(file 參數指定的檔案)中。必須指定一個或兩個版本來進 行合併。若有重複的部分,則和 merge 的處理方式相同。rcsmerge 接受標準的 -q、-V 和 -x選項。rcsmerge 的傳回值為 0(無重複)、1(有重複)或是 2(不明錯誤)。
Options
-kc 比較檔案時,將關鍵字以 c 方式展開。(見指令 co 有關 c 的說明)。
-p[R] 將合併的檔案送往標準輸出,而不寫入檔案。
-r[R] 合併版本 R,若不指定 R,則將最新版本予以合併。
範例:
若要將舊版(1.3 版)的 prog.c 加入一些修改,但目前的檔案以到 1.6 版了。下面指令會將改變的部分併入 1.6 版中。
co -l prog.c
(先修改最新版,將 1.3 版的修改部分加進去,然後:)
rcsmerge -p -r1.3 -r1.6 prog.c > prog.updated.c
將 3.5 到 3.2 之間的修改恢復原狀,然後覆寫目前工作檔案:
rcsmerge -r3.5 -r3.2 chap08
--------------------------------------
rlog [options] files
顯示 RCS 檔案中的識別資料。包括每個版本的紀錄訊息、加入或刪除的行數和最後一次存入的日期等等。不加上options時,rlog 會顯示所有的資訊。你可以加上options來顯示特定的資訊。rlog接受標準的 -V 和 -x 選項。
Options
-b 精簡顯示資訊,僅印出有關預設 branch 的資訊。
-ddates 將存入時間在 dates 範圍內的版本資訊顯示出來。dates 以分號分隔。請注意要使用引號。每個日期可以下 列方式指定:
d1 < d2 指定從 d1 到 d2 之間的版本。
d1 < 指定 d1 之後的版本
d1 > 指定 d1 之前的版本。
-h 顯示一般 rlog 的開頭。
-l[users] 僅顯示鎖定的版本。若有指定users列表的話,則僅顯示users列表中的使用者所鎖定的版本資訊。
-L 未經鎖定的檔案不予以顯示。
-r[list] 顯示 list 所指定的版本號碼。list 所指定的版本號碼之間要以「,」分開。若不指定 list,則使用最新的版本。list 中的版本可以下列方式指定:
R1 指定 1 版本號碼。若 R1 式 branch,則選擇該 branch 上所有版本。
R1. 若 R1 是 branch,則僅顯示其最新版本。
R1-R2 從 R1 版到 R2 之間的版本。
-R1 從 branch 開頭到 R1 的版本。
R1- 從 R1 到該 branch 的最新版。
RCS 5.6 版中將範圍分隔字元改為「:」,不過「-」還是可以使用。
-R 只顯示該 RCS 檔案的名稱。
-sstatus 顯示符合 status 所指定的狀態的版本資訊。多個 status 之間用「,」分開。
-t 和 -h 一樣,但加上檔案的描述。
-w[users] 顯示由 users 列表內使用者所存入的版本資訊。users 列表以「,」隔開。若不指定 users,則預設為執行此指令的使用者。
範例:
顯示檔案的改版歷程:
rlog RCS/*,v | more
顯示 daniel 這個使用者所鎖定的 RCS 檔案名稱:
rlog -R -L -ldaniel RCS/*
顯示工作檔案的「標題」部分(不顯示改版歷 程):
rlog -t calc.c
沒有留言:
張貼留言