<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Read Sean

    Read me, read Sean.
    posts - 508, comments - 655, trackbacks - 9, articles - 4

    昨天(周五)大家下班后,一個人留在公司,把核心產品開發團隊使用了整整1年的CVS資源庫從CVSNT移到了Linux平臺下,原本以為會很簡單很順利,因為之前類似的移植并不是沒有做過,所以預估的時間包括驗證在內是1~2個小時,不過最終卻花掉4個小時。怎么回事呢?且聽我慢慢道來。

    經過1年的積累,資源庫有400多M,大大小小的Java項目有206個之多。按照最初的計劃,移植只需要原封不動的把資源庫目錄整個從CVSNT服務器拷貝到Linux服務器即可,所以資源庫大小和項目多少本來不是啥大問題,但誰料半路卻殺出個程咬金:.jar文件在新的資源庫checkout到本地后無法正常使用,這還了得?

    仔細一看,乖乖,原本"Binary"的文件,在新的資源庫下,卻變成了"ASCII -kkv",不僅是.jar,其他的二進制文件如.jpg, .exe之類的也是同樣的問題。第一反應是CVSNT和Unix經典的CVS在處理RCS文件時還是有些不同,以至于原本在CVSNT下文件類別的標記信息如"Binary"在移植過程中丟失了,變成默認的文本類型。之前有朋友提醒的.doc文件移植后無法打開應該也是同樣問題。怎么辦?一個文件一個文件的改?肯定不現實。

    一種方案是把所有出現的二進制文件類型/后綴名找出來,然后在服務器端批量刪除(Linux下寫個腳本來做這件事并不難),客戶端這邊從原資源庫checkout最新版本,重定向資源庫URL到新的資源庫,同步,提交。這招比較狠,但最終沒有用,因為在瀏覽現有資源庫時,發現還有不少其他問題,如classes文件夾被加到版本控制中,類似還有.settings文件夾,甚至Thumbs.db,不一而足。時間有限,與其每個Java項目去找一遍,整理出需要刪除的文件(夾)清單,然后寫腳本,然后強行資源庫重定向,不如一步一個腳印把現有資源庫的所有Java項目捋一遍,至少心里踏實。于是一狠心、一咬牙,有潔癖的我開始了漫長的"愚公移山":一個項目接一個項目,遇到Binary文件,服務器刪之,客戶端checkout后從原來的地方拷貝過來,必要的地方加上.cvsignore,再添加提交。*

    經過4個小時的努力,終于大功告成:自動編譯腳本正確運行,構建成功,客戶端IDE(Eclipse)從新的資源庫checkout,編譯通過,沒有紅叉。

    后記:自己認為計劃得再好的事情,真正去做的時候,總還是會遇到這樣那樣的問題和意想不到的狀況,這件事也告訴我自己其實我的前期準備遠不夠充分,算是自食其果吧。有沒有更好的辦法,我覺得肯定有,但是在特定的情況下(時間/效率/目標),我相信我的方法還是能夠讓我自己滿意的。還有一點提醒所有CVS的用戶,不該提交的文件,最好第一時間加到.cvsignore。子曾經曰過:“糾正錯誤,時間最早,代價越小”。

    * 請勿不假思索的模仿,這樣做會丟失掉這些文件的歷史版本信息,如果刪除的時候不小心,同時還會把歷史上存在過的同類型文件刪掉。我這里之所以可以這么做,是因為我們的實際情況對這些二進制文件不需要保留歷史信息。


    Feedback

    # re: [愚公移山] 團隊CVS資源庫從CVSNT遷移到Linux  回復  更多評論   

    2007-04-17 15:02 by bb
    “糾正錯誤,時間最早,代價越小” 子也曰過嗎, 呵呵

    # re: [愚公移山] 團隊CVS資源庫從CVSNT遷移到Linux  回復  更多評論   

    2007-07-06 17:10 by squall
    高手啊。。。我現在也做遷移不會啊。。。老出錯。。我技術可沒你那么強

    # re: [愚公移山] 團隊CVS資源庫從CVSNT遷移到Linux  回復  更多評論   

    2013-12-25 14:53 by guest
    這篇有提到如何轉換 CVSNT 成 CVS 只要簡單的替換一行就可以了
    http://www.pchilton.co.uk/2010/05/06/converting-cvsnt-to-linux-cvs/
    主站蜘蛛池模板: 亚洲成人一级电影| 在线观看免费毛片| 巨胸喷奶水视频www网免费| 亚洲网址在线观看你懂的| 中文字幕在线免费看线人| 成人毛片18女人毛片免费96| 亚洲日本在线播放| 免费A级毛片无码无遮挡内射| 亚洲人成影院午夜网站| 青青在线久青草免费观看| 91亚洲国产在人线播放午夜| 182tv免费视视频线路一二三 | 最好看最新的中文字幕免费| 免费观看四虎精品国产永久| 国产精品亚洲精品观看不卡| 亚欧免费一级毛片| 中文字幕亚洲日本岛国片| 青青操视频在线免费观看| 91嫩草私人成人亚洲影院| 国内精品乱码卡1卡2卡3免费| 亚洲欧美成人av在线观看| 免费可以看黄的视频s色| 亚洲s码欧洲m码吹潮| 毛片基地免费视频a| 亚洲国产av一区二区三区丶| 性一交一乱一视频免费看| 国产vA免费精品高清在线观看| 国产大片91精品免费观看男同| 亚洲色精品VR一区区三区| mm1313亚洲精品国产| 国产一区二区三区免费观在线| 亚洲人成电影在线播放| 国产亚洲男人的天堂在线观看| 亚洲中文字幕久久精品无码APP| 一级毛片免费不卡| 久久久亚洲欧洲日产国码aⅴ| 暖暖免费高清日本一区二区三区| 亚洲精品美女久久久久久久| 亚洲精品无码成人片久久| 扒开双腿猛进入爽爽免费视频| 三年片免费高清版|