• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Jiang's C++ Space

            創(chuàng)作,也是一種學(xué)習(xí)的過程。

               :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            在Google輸入VSS和SVN,看看網(wǎng)上對(duì)這兩者的評(píng)價(jià),估計(jì)九成以上的人都認(rèn)為SVN優(yōu)于VSS,一來SVN免費(fèi),二來功能更為強(qiáng)大,而且是跨平臺(tái)的,不局限于Microsoft的環(huán)境,還不說它是開源的。我也是這么認(rèn)為的,對(duì)于版本管理,Visual SVN + Tortoise SVN,太完美了,用起來相當(dāng)簡單,足見開源項(xiàng)目也有精品。

            但VSS用的人還是很多,比如我現(xiàn)在的公司(最近換的工作),雖然我是一個(gè)人在戰(zhàn)斗,但他們還是有要求說要把代碼放到VSS中去,于是花了點(diǎn)時(shí)間擺弄了一下。

            首先是安裝及版本問題,一開始我以為VS2008會(huì)自帶VSS2008,但其實(shí)沒有,我所安裝的VS2008為Team Suite版,都沒有發(fā)現(xiàn)VSS2008,所以只好求其次,找到了VSS2005,安裝包400多M,我不知道為什么這么大,但安裝好之后我在安裝目錄下只發(fā)現(xiàn)了不到20M的文件,安裝后版本號(hào)為8.0.50727.42,這樣還不行,據(jù)說這樣跟VS2008存在兼容性問題,畢竟VSS2005的生日早于VS2008,沒考慮到VS2008的需要也是正常的,所以得一個(gè)補(bǔ)丁,補(bǔ)丁不大,大約3M,到網(wǎng)上搜索一下應(yīng)該很好找到,補(bǔ)丁打上去之后版本就變成了8.0.50727.1551,這就是我們所要的了。安裝過程還是挺快的,也沒有太多的option,一路next下去即可。值得說一下的是VSS2005需要.Net Framework 2.0,不過我想現(xiàn)在大多數(shù)機(jī)器都有這個(gè)玩意兒了吧,應(yīng)該不需要另外再裝了。

            安裝完之后在開始菜單里有兩個(gè)圖標(biāo),一個(gè)是Microsoft Visual SourceSafe(簡稱VSS),一個(gè)是Microsoft Visual SourceSafe Administration(簡稱VSS Admin),名如其實(shí),一個(gè)是“使用”,一個(gè)是“管理”。使用VSS Admin可以創(chuàng)建“數(shù)據(jù)庫”,相當(dāng)于SVN的容器,把工程相關(guān)文件放入“數(shù)據(jù)庫”中,即實(shí)現(xiàn)了代碼管理。

            運(yùn)行VSS Admin,點(diǎn)<Cancel>取消登錄,然后<File>-<New Database...>即運(yùn)行了“數(shù)據(jù)庫”創(chuàng)建向?qū)В付ㄒ粋€(gè)存放這個(gè)“數(shù)據(jù)庫”的位置,即可。向?qū)н€讓你選擇模式,模式有兩種,一種是經(jīng)典的Lock-Modify-Unlock模式,令一種是類似SVN的Copy-Modify-Merge模式,前一種不能多人同時(shí)修改,后一種不能檢出最新版本。通常用VSS的人都會(huì)選擇前一種模式。

            “數(shù)據(jù)庫”創(chuàng)建完后,觀察一下指定的那么目錄,目錄下有個(gè)文件叫“srcsafe.ini”,可以認(rèn)為這個(gè)文件就是VSS連接的依據(jù),VSS必須能訪問到這個(gè)文件,才能訪問相關(guān)的“數(shù)據(jù)庫”。我嘗試修改“srcsafe.ini”的參數(shù)并把它放到別的地方去,但沒有成功,我也不知道是不是一定要放在“數(shù)據(jù)庫”的目錄下。“數(shù)據(jù)庫”目錄下有三個(gè)子目錄,一個(gè)是data,不用說,這就是放代碼的地方了,一個(gè)temp,臨時(shí)目錄,一個(gè)users,關(guān)于用戶信息。

            關(guān)于安全策略,按照微軟的說法,VSS的安全策略其實(shí)是依賴于Windows系統(tǒng)的,按照Windows的規(guī)則,一個(gè)用戶如果不能訪問“數(shù)據(jù)庫”目錄,那么這個(gè)用戶用VSS也會(huì)遇到問題,而VSS的數(shù)據(jù)庫目錄往往需要同時(shí)讓很多人訪問,所以它的共享設(shè)置很重要,但又必須考慮到安全問題,最好設(shè)置為只讓相關(guān)人士訪問,或者建立一個(gè)用戶組,這樣方便管理。當(dāng)然這都是IT做的事情了,且不去深究它。

            如果需要修改“數(shù)據(jù)庫”的配置,那重新打開VSS Admin,用Admin用戶登錄,Admin默認(rèn)密碼為空,你可以在登錄完之后修改一下,你還可以創(chuàng)建更多的用戶,比如創(chuàng)建一個(gè)用戶叫“developer1”,并設(shè)置其密碼為“abc123”。

            “數(shù)據(jù)庫”創(chuàng)建好后,打開VSS,連接它,在Open SourceSafe Database對(duì)話框中點(diǎn)“Add”,打開連接向?qū)Вx擇“Connect to an existing database”,然后Browse,選擇前面提到的那個(gè)“srcsafe.ini”文件,指定一個(gè)名字,這樣就可以了。回到Open對(duì)話框中,點(diǎn)“Open”。這時(shí)候輸入用戶名密碼,用前面創(chuàng)建的“developer1”登錄,輸入密碼“abc123”即可。

            好了,現(xiàn)在可以執(zhí)行一系列的操作了,自己好好玩玩。但我總覺得不是很方便,比如添加文件,用起來就比較繁瑣,不像Tortoise SVN那樣,指定一個(gè)目錄,所有文件都列了出來,讓我選擇哪個(gè)需要入庫,哪個(gè)不要,并且很好的保留了目錄結(jié)構(gòu),而這里不行,試試看就知道了,非常不爽……

            那VSS比SVN到底有什么優(yōu)勢呢?我想唯一的優(yōu)勢是跟Visual Studio的整合,另外就是習(xí)慣問題,不少人都習(xí)慣于使用Microsoft的東西了……

            比同直接使用VSS的客戶端入庫,也許用VS2008更好點(diǎn),如何讓一個(gè)工程入庫?看圖:

            然后blah blah blah,不必多說了。

            搞定后發(fā)覺工程的文件的圖標(biāo)邊上多了個(gè)小鎖頭,代表該文件正在被鎖著,那如果要編輯這個(gè)文件,怎么辦呢?很簡單,通常跟以前沒什么差別,打開,然后編輯,你會(huì)發(fā)現(xiàn)小鎖頭變成了一個(gè)小紅鉤,說明此文件已經(jīng)被檢出編輯了,如果其他人這個(gè)時(shí)候也想動(dòng)這個(gè)文件,那就會(huì)得到一個(gè)出錯(cuò)提示。當(dāng)你編輯完后,右擊這個(gè)文件,Check In即可,小紅鉤重新變回了小鎖頭。

            同樣是在VS2008的Solution Explorer中,你可以查看某個(gè)文件的History,還有執(zhí)行些別的操作等,這里就不多說了。

            最后我想說,我沒發(fā)現(xiàn)VSS有像SVN那樣的制作Tag的功能,這個(gè)功能是十分十分有用的,比如我現(xiàn)在如果需要release一版程序,需要在release note中注明這版程序是用哪個(gè)tag的代碼生成的,相當(dāng)于立一個(gè)“里程碑”,我想你也能想象出這個(gè)功能的必要性,而VSS居然沒有,只有針對(duì)單個(gè)文件的history list,還不能像Tortoise SVN那樣用形象的Graph來表征版本變更歷程,Damn it。
            posted on 2010-06-02 16:25 Jiang Guogang 閱讀(872) 評(píng)論(1)  編輯 收藏 引用 所屬分類: Knowledge

            評(píng)論

            # re: VSS使用手記 2010-06-02 16:56 matthew
            可惜,都沒有用過,公司只用cvs  回復(fù)  更多評(píng)論
              

            久久久噜噜噜www成人网| 久久精品国产精品青草app| 国产精自产拍久久久久久蜜| 色综合久久综合中文综合网| 精产国品久久一二三产区区别 | 精品免费tv久久久久久久| 性色欲网站人妻丰满中文久久不卡| 一本久久a久久精品综合香蕉| 久久免费视频6| 2020国产成人久久精品| 日日狠狠久久偷偷色综合0| 欧美性猛交xxxx免费看久久久| 久久久久99精品成人片牛牛影视| 国产精品热久久无码av| 久久亚洲电影| 久久久久久久97| 91精品国产高清久久久久久国产嫩草 | 久久精品一区二区影院| 欧美久久综合九色综合| 四虎国产精品成人免费久久| 偷窥少妇久久久久久久久| 久久久久久亚洲精品成人| 久久久久久狠狠丁香| 精品一久久香蕉国产线看播放| 欧美日韩精品久久久免费观看| 久久亚洲中文字幕精品有坂深雪| www.久久99| 无码任你躁久久久久久老妇| 久久久无码精品亚洲日韩京东传媒| 亚洲中文字幕久久精品无码APP| 丁香五月网久久综合| 久久久无码精品亚洲日韩软件| 无码人妻精品一区二区三区久久| 91秦先生久久久久久久| 亚洲欧洲中文日韩久久AV乱码| 国产精品久久久久久吹潮| 久久精品无码av| 成人国内精品久久久久一区 | 久久综合亚洲色HEZYO国产| 亚洲精品乱码久久久久久| 亚洲国产精品久久66|