Archive for the ‘unix’ Category

如何讓linux啟動後自動進入圖形界面或不讓它進入圖形界面

May 3, 2006

3.如何讓linux啟動後自動進入圖形界面或不讓它進入圖形界面
a.進入圖形界面:安裝時選圖形啟動方式或把/etc/inittab的id:x:initdefault:這行改成id:5:initdefault:。
b.不進入圖形界面:安裝時選文本啟動方式或把/etc/inittab的id:x:initdefault:這行改成id:3:initdefault:。

Advertisements

CVS筆記

January 24, 2006

diff

d delete
a add
work directory
– deleted in working directory
*** diff_start_line, diff_end_line *** difference in repository
— diff_start_line, diff_end_line — difference in work directory
! 程式碼發生衝突(同一行,但內容不一樣)

基本的file compare command
cvs diff -c FILE_NAME            # -c : 列出程式碼

如果在conflict 的情況下(需要merge !), 執行update
cvs update FILE_NAME
會得到一個有特殊code的程式檔
>>>>>> REVERSION            # B的修改已經先一步check in 檔案庫
# 注意,A要先跟B討論之後,修改並移除掉這個特殊碼
# 才可以check in repository

依時間點取出過去的專案
cvs -q update -D “2002-10-22 23:50:23 GMT”
# 注意喔! 這是說,你local端的版本暫時變成舊版本了
# 而你之前的修改暫時被藏起來
# 用 cvs -q update -A 可以還原
# 這個指令對repository一點影響也沒有的

當取得舊的庫存檔案時,是不能check in 的(因為歷史不能修改)
你可以取消時間點:
cvs -q update -A             # 回到原本的工作版本
或是增加一個branch, 程式由此分出去

一般在推出正式版軟體時,專案leader會加入一個標記,做為將來維護的基點
cvs -q tag TAG_NAME

check out時也想要順便造一個新目錄,可以這樣
cvs co -d oldsfs2 -r r2002_10_20 sfs2    # -d 會造一個新目錄,取出的專案程式碼置於裡面
# 最後的sfs2 是project name

做分支的指令
cvs -q tag -b r2002_10_20_branch    # -b 指示產生一個分支
cvs -q update -r r2002_10_20_branch    # 然後要做update, 才會更新local端的檔案
用cvs status FILE_NAME看
repository revision顯示的是分支的根基點(主幹的)
Sticky Tag (branch: )顯示的是分支的根基點(分支的)
兩個內容應相同,但是revision就不同了

若要由分支回到主幹,可下:cvs -q update -A

“分支的目的之一是為了修正某些程式的錯誤,開發中的版本,極可能也有這個 bug 存在,因此通常分支修改完之後,會和主幹做合併的動作。”
註:比如說,已經推出了1.0的版本
但是這版本有bug, 可以建立分支,改正bug,推出1.1,供購買1.0的使用者下載
但是未來本公司將要推出2.0的版本,
這時就要把之前1.1的修正合併進來,
2.0才不會有同樣的bug

軟體要發行了,希望這個版本不要內含cvs資訊,可以如下做:
cvs -q export -r 標記 -d 軟體目錄名稱 專案名稱
您只要將軟體目錄予以打包壓縮,即可放上網站供人下載。

CVS還有關鍵字展開的功能
如$Id$
會被CVS展開成$Id: CN.php,v 1.1.1.1 2002/07/06 06:29:42 ols3 Exp $

二進位檔不適用關鍵字展開、carrier return 轉換的動作
所以要加入二進位檔時,請這麼做:
cvs add -kb 檔案名稱
只想關閉關鍵字展開的選項,請用:
cvs add -ko 檔案名稱

網路管理技術文件 by 臥龍小三

January 9, 2006

link