本檔案是作者本人使用vss產生的一些心得、經驗之類的記錄,並非嚴肅的操作手冊。就我個人體會而言,嚴謹詳細的操作手冊通常讓人產生畏懼感並由此排斥這個軟體。如果只通過簡單的幾步引導就能獲得常用的結果則會讓人產生很大的滿足感並對這個軟體產生很高的評價(我試圖接近這個目標)。很幸運,微軟的產品總是比較容易入門(並因此招致競爭對手的嫉妒和指責)。微軟公司的大多數專案並非用vss管理(他們使用更強大的版本控制系統),然而很多管理嚴格的公司(真正的cmm3)卻也在使用vss進行管理,他們的vss資料可以累積到好幾個g。這些公司並非僅僅使用vss管理源**,他們用vss管理所有受控的檔案,包括組織級檔案、專案文件、會議記錄、評審報告等等,總之一句話,所有重要的東西和他們的歷史都可以在vss中獲得。很多程式設計師在體會了版本控制系統的好處以後開始用版本控制系統管理自己的所有檔案,從此不用擔心自己遺忘什麼或者因為偶然的失誤失去什麼重要的東西,這是一種幸福的感覺。
visual sourcesafe 是乙個源**控制系統,可以儲存檔案的不同版本,可以比較檔案的差別,可以控制不同的人對同一檔案的修改。就功能而言是同類產品中比較弱的,但滿足了基本的需要並且非常容易使用,因此獲得了非常廣泛的使用。vss目前的最高版本是6.0d(6.0+sp6=6.0c),微軟公司似乎沒有開發vss.net的計畫,因此我們不得不繼續忍受visual studio 98風格的介面。
所謂vss伺服器指的是存放vss資料庫的計算機,客戶端是訪問vss資料庫的計算機,而vss資料庫是乙個共享的目錄,僅此而已(因此並不存在伺服器程式)。
微軟產品的安裝一向簡單,只有少數選項需要說明一下。安裝型別包括「shared database server」、「custom」和「stand-alone」三種,第一種共享資料庫伺服器是完全安裝,第二種定製安裝的預設值也是完全安裝,因為這個軟體本來就很小,所以選前兩種就行了,第三種單機安裝就是單機版。
安裝完成以後得到乙個vss目錄,這個目錄包含了一切:程式檔案、配置檔案、預設資料庫、用於網路安裝的客戶端安裝程式。如果這個預設資料庫需要在網路上共享(一般總是需要的)則將這個vss目錄共享,並給相關人員設定完全訪問的許可權(即使這個使用者只是vss資料庫的唯讀使用者)。注意,目錄的安全屬性與共享許可權不同,「program files」目錄下子目錄和檔案的訪問許可權可能是受限制的,所有vss使用者在vss目錄的安全屬性也必須是完全訪問的。
這樣修改安全屬性:在vss目錄上點右鍵,選擇「屬性」,切換到「安全」屬性頁,設定許可權,然後點下面的「高階」按鈕,選中高階裡面最下面的「重置所有子物件的許可權並允許傳播可繼承許可權」選擇框,點「確定」退出高階,再點確定使修改生效。
(a) 介紹
vss的資料庫是乙個目錄,目錄下包含若干個檔案和目錄,「srcsafe.ini」是關鍵檔案,此檔案用來標識乙個vss資料庫。vss客戶端開啟乙個資料庫的方式就是找到這個檔案,所以共享資料庫的方式就是簡單地共享包含這個檔案的目錄。另外乙個檔案「users.txt」記錄使用者資訊。還有三個目錄:「data」、「temp」和「users」,分別存放資料庫的內容、臨時的資訊和使用者的相關資料。安裝vss軟體的目錄除了上面所說的vss資料庫的檔案外還包含幾個目錄存放vss程式,根據安裝型別不同可能還包括網路客戶端安裝程式。
vss不存在服務程式,一切都通過檔案操作進行。最簡單的備份方式、也是最可靠、絕不會出錯的方式就是備份整個目錄。另乙個方式是定期取得資料庫裡所有檔案的最新版本,只對最新版本進行備份。為了避免儲存大量不必要的版本,可以對每個專案建立乙個vss資料庫,這個資料庫儲存所有的變更(包括開發過程中的大量嘗試性的變更),而公司級的受控庫只儲存正規的版本。
安裝vss軟體的時候可能已經安裝了乙個資料庫,那麼這個資料庫就是預設的資料庫,資料庫都用位置命名,目錄名字或者網路位置的名字(名字其實是無關緊要的,資料庫的實際位置才是關鍵)。
vss軟體在程式選單中包含四個程式,其中兩個——分析並修復資料庫、分析資料庫——都是很少用的,另外兩個vss admin程式(visual sourcesafe 6.0 admin)和vss 瀏覽器(microsoft visual sourcesafe 6.0)是最常用的。另外還有一些其他程式並未出現在程式選單,需要閱讀幫助檔案挖掘,vss支援命令列方式,有程式設計介面(不然開發工具是如何與vss整合的)。
每個資料庫初始擁有兩個使用者:「admin」和「guest」,都擁有全部許可權並且沒有口令(因為admin沒有口令是不安全的,所以初次開啟admin程式會得到乙個安全警告)。admin使用者是超級使用者並且無法被刪除也不能修改許可權。admin口令是最重要的,因為預設情況下vss程式會用上一次的使用者名稱和口令登入vss,所以一般使用者忘記口令是很常見的,這時候就需要admin使用者使用admin程式重新設定使用者的口令了。
vss以樹形目錄的方式組織內容,每個目錄稱之為乙個專案(project,這是乙個重要概念),每個子目錄也同樣是乙個專案,如果使用了遞迴選項則對乙個專案的操作會包含下面的所有子專案,對乙個專案的設定會影響子專案,子專案的設定會覆蓋繼承自父專案的設定(但具體每個操作的效果要看具體的操作,並非沒有特例)。簡單地說,專案就是虛擬目錄(並且和外部實際目錄對應)。
(b) visual sourcesafe 6.0 admin程式
開啟admin程式要求輸入口令,但並不總是這樣,vss會儲存上次使用的資料庫和使用者名稱、口令,這樣下一次使用vss就不需要輸入口令,進入vss的admin或瀏覽器程式以後可以再改變資料庫。admin程式的介面如下:
基本上這是個相當簡單的介面,功能都通過選單實現。介面的主要部分用來顯示當前的使用者列表、許可權和登入狀態,不支援右鍵,僅支援雙擊,雙擊可以修改使用者的名字和許可權。許可權很簡單,預設為「read-write」,可以修改為「read-only」,顯然這不會使我們滿足,我們需要的是「project rights」,對每個目錄給每個使用者特定的許可權,這些許可權包括唯讀、寫入、新增刪除重新命名、銷毀,除了不能控制到檔案,這基本上滿足了我們的要求。具體操作後面會介紹,相當簡單。
學習python的一些心得和經驗
最近有不少朋友問學習python如何下手,是不是報個培訓班學習?下面先簡單的介紹一下python。python是一種物件導向 直譯式計算機程式語言,由guido van rossum於1989年底發明,第乙個公開發行版發行於1991年。python語法簡捷而清晰,具有豐富和強大的類庫。它常被暱稱為膠...
debug的一些經驗
1.儘量減少debug,少用debug,優秀的程式設計師總是花80 的時間來思考如何解決問題,20 的時間來動手完成 而糟糕的程式設計師總是用20 的時間去寫 80 的時間去除錯 動手之前盡量想好如何去做,並且已經為你自己的思路做了充分的實驗。2.盡可能的提高debug的效率,設定合適的斷點,使用快...
重構的一些經驗
當我們已經對設計模式倒背如流時,卻往往發現在實際 編寫中有生搬硬套的感覺。設計模式是前人經驗的總結,直接拿來用合不合適呢?這讓我想起了大學一位老師告訴我們的一條學習的道路 知識,理論,智慧型 設計模式是很一種優雅的 智慧型 但對於我們初學者來說還僅僅是留存於文字的 知識 把 知識 融合到自己的開發中...