Wednesday, November 16, 2011

cvs 檔案損毀

這算是悲據吧..!!
昨天 CVS 系統出現ext3 的node錯誤的message ,大驚, 所以盡快換了一顆硬碟, 把檔案覆製好後以為安全了, 結果今天陸續傳回災情, 某些binary 檔案無法用WinCVS log or graph, 出現下面的些log


cvs log -- xxx.dll ( in directory x:\xxx\ )
cvs [log aborted]: premature end of value in  /cvs/xxx/xxx.dll,v  revision 1.187


搞了老半天, 最後只好把1.187 這個版本直接從  xxx.dll,v 這個檔案裡砍掉, 總算解了這個問題

但又接到幹譙信, 換另一個檔出問題, 再查這次就慘了, 出現下面這個LOG

cvs log -- xxx.dll (in directory x:\xxx\)
cvs [log aborted]: unexpected '\x5e' reading revision number in RCS file /cvs/xxx/xx2.dll,v


沒有地方可以查問題出在哪, google 大神請出來拜了N回了, 還是找不到修復的程式, 有點欲哭無淚, 後來有找到原來cvs 的套件裡已檢查檔案是否損毀的script

一般應該放在這
/usr/share/cvs/contrib/check_cvs

需要先設定CVSROOT
export  CVSROOT="/cvs/xxx"   <-設成你的CVSROOT
如果想要show多一點information 就再設 CVSDEBUGEDIT 變數
export CVSDEBUGEDIT=1


如果是在windows 下的, 記得把export 改成 setenv


然後執行就可以列出損毀的檔案了..可以檢查災情....




然後.... 然後.. 沒有救檔的程式嗎? 靠夭勒.. 沒有....... 看來又得再一一比對了..!!
如果知道自動修的檔案, 記得通知我一下..!!