發(fā)布時(shí)間:2021-12-06 文章來源:xp下載站 瀏覽:
軟件是一系列按照特定順序組織的計(jì)算機(jī)數(shù)據(jù)和指令的集合。一般來講軟件被劃分為編程語言、系統(tǒng)軟件、應(yīng)用軟件和介于這兩者之間的中間件。硬件是“計(jì)算機(jī)硬件”的簡(jiǎn)稱。與“軟件”相對(duì),電子計(jì)算機(jī)系統(tǒng)中所有實(shí)體部件和設(shè)備的統(tǒng)稱。 我們?cè)谑褂肨ortoiseSVN這款開源客戶端的時(shí)候,有時(shí)候會(huì)遇到一些錯(cuò)誤信息的提示,比如說,大家都非常熟悉的400 服務(wù)器未能理解請(qǐng)求、403 對(duì)被請(qǐng)求頁(yè)面的訪問被禁止等。那么,TortoiseSVN出現(xiàn)錯(cuò)誤信息該怎么辦呢?下面,就一起來看看小編給大家整理的TortoiseSVN常見的錯(cuò)誤信息與解決方法!
TortoiseSVN TortoiseSVN 1.9.2.26806 64位英文安裝版(點(diǎn)擊進(jìn)入) TortoiseSVN 1.9.2.26806 32位英文安裝版(點(diǎn)擊進(jìn)入) 1、無法復(fù)制/移動(dòng)‘XXX.svn-base‘到’XXX.tmp‘:系統(tǒng)找不到指定文件。 這個(gè)錯(cuò)誤信息通常在你更新工作拷貝時(shí)出現(xiàn),可能的原因有兩個(gè): 版本庫(kù)中有兩個(gè)文件的名字只是大小寫不同,這在Windows下是不允許簽出的,因?yàn)閃indows的文件系統(tǒng)是大小寫不敏感的。很可能其中一個(gè)文件是誤添加的,所以你要找出是哪一個(gè),然后刪除它,以確保不會(huì)把更改提交到錯(cuò)誤的文件。 某個(gè)文件的文件名是非法的(對(duì)Windows來說非法),比如,“con”, “lpr”, “com”都是非法的,因?yàn)檫@些都是設(shè)備名。當(dāng)然,含有“/\*?:|”和其它特殊字符在Windows(NTFS 和 FAT)也是不允許的。 是,我們知道這個(gè)錯(cuò)誤信息對(duì)解決問題沒什么實(shí)質(zhì)性的幫助,但這個(gè)錯(cuò)誤信息是來自Subversion庫(kù)的,我們改不了。 有幾個(gè)辦法可以避免這個(gè)問題,請(qǐng)看 這里。 2、無法打開文件’XXX\nnn-n.txn\changes‘:無法訪問,文件正被其它程序使用。 通常報(bào)告這個(gè)錯(cuò)誤的人都說這個(gè)問題是隨機(jī)發(fā)生的,并且通常會(huì)在一次大的提交中發(fā)生。重新提交可能成功,也可能在別的地方出錯(cuò)。 最有可能的原因是,有一個(gè)病毒掃描程序正在非正常地占用這個(gè)文件。你可以試著禁用病毒掃描,或者讓它忽略你的版本庫(kù)文件。 類似的錯(cuò)誤也可能發(fā)生在你的工作拷貝,試試讓它忽略 .svn 文件夾。 3、添加‘XXX’失敗:同名對(duì)象已存在。 這個(gè)錯(cuò)誤通常是在你更新工作拷貝時(shí)發(fā)生。之所以拋出這個(gè)錯(cuò)誤是因?yàn)镾ubversion絕對(duì)不會(huì)擅自刪除或者覆蓋你已有的本地文件。有三個(gè)可能原因會(huì)導(dǎo)致這個(gè)錯(cuò)誤: 你有一個(gè)未納入版本控制的本地文件,名字跟其他人已添加的文件一樣。這種情況下你可以先移走或者重命名你的本地文件再更新。之后你可以決定是需要合并還是把你的文件改個(gè)名字。 版本庫(kù)中的一個(gè)文件被重命名了,但只是大小寫不一樣,如 Install.txt 改為 install.txt,而你在本地作了修改。當(dāng)你更新時(shí)就會(huì)遇到第一種情況,你修改過的本地文件被視為未納入版本控制。將它移到其它地方,再更新,問題解決。 版本庫(kù)中有兩個(gè)文件的名字只是大小寫不同,這在 Windows 下是 不 允許簽出的,因?yàn)?Windows 的文件系統(tǒng)是大小寫不敏感的。很可能其中一個(gè)文件是誤添加的,所以你要找出是哪一個(gè),然后刪除它,以確保不 會(huì)把更改提交到錯(cuò)誤的文件。 4、OPTIONS of ’《path》‘: 401 Authorization Required 《url》 升級(jí)到 1.4.x 版之后,你發(fā)現(xiàn)無法訪問版本庫(kù)了,每次都出這個(gè)錯(cuò): OPTIONS of ’path‘: 401 Authorization Required ’url‘。 這是因?yàn)?1.4.x 版使用了 SSPI 自動(dòng)驗(yàn)證,即TortoiseSVN會(huì)自動(dòng)使用登錄 Windows 域控制器的用戶信息來作身份驗(yàn)證。 如果你設(shè)置你的服務(wù)器以 SSPI 的方式向域控制器作身份驗(yàn)證,而域控制器又沒開放 GUEST 用戶的話,不會(huì)有問題。但是如果開放了 GUEST 用戶,自然所有以 GUEST 用戶進(jìn)行的驗(yàn)證都會(huì)通過——但是一般來說你是不會(huì)授權(quán) GUEST 訪問你的版本庫(kù)的。這就造成了 驗(yàn)證 通過了,但授權(quán) 不成功。 另一個(gè)失敗的原因是,你設(shè)置用來訪問版本庫(kù)的用戶跟你用來登錄工作站的用戶不一致(那我就奇怪了,如果是這樣你根本就不應(yīng)該以 SSPI 方式來驗(yàn)證呀)。 有幾個(gè)方法可以解決此問題: 在域控制器中禁用 GUEST 用戶 將登錄工作站的用戶和訪問版本庫(kù)的用戶設(shè)為一樣 不用 SSPI 來做版本庫(kù)驗(yàn)證 檢查用戶名的大小寫,將控制文件中的用戶名改為小寫對(duì)解決問題也可能有幫助 5、客戶端版本太舊,不能操作工作拷貝‘XXX’ 完整的錯(cuò)誤信息是:客戶端版本太舊,不能操作工作拷貝’。‘;請(qǐng)下載更高版本的Subversion客戶端。 當(dāng)先使用一個(gè)比較高版本的Subversion客戶端,然后又用比較低版本的客戶端來執(zhí)行命令,就會(huì)發(fā)生這個(gè)錯(cuò)誤。比如你先用了 1.4.x 版的客戶端操作工作拷貝,然后用 1.3.x 版的操作同一個(gè)工作拷貝。 這是因?yàn)镾ubversion1.4 和 1.5 會(huì)自動(dòng)更新工作拷貝的格式,而老版本的客戶端不認(rèn)新的格式。 唯一的解決辦法是升級(jí)你的客戶端,或者用你老版本的客戶端重新簽出。 6、工作拷貝已過期 這個(gè)錯(cuò)誤是在提交修改的時(shí)候出現(xiàn)的,通常是因?yàn)樵诎姹編?kù)里,你想要提交的文件已經(jīng)被其他人修改了。 這時(shí)你要先用 更新 命令更新的的工作拷貝到版本庫(kù)當(dāng)前的版本。 你可能會(huì)不明白為什么要這么做,尤其是在你 確知 版本庫(kù)并沒有被修改過的情況下。答案很簡(jiǎn)單,因?yàn)樘峤坏臅r(shí)候,并不會(huì)徹底更新你的工作拷貝,而只是那些修改的文件會(huì)被自動(dòng)更新。舉個(gè)例子,有個(gè)新建的版本庫(kù): Add Folder in revision 1 Add File1 and File2 in revision 2 Modify File1 and commit in revision 3 現(xiàn)在版本庫(kù)處于修訂版本 3,但你的工作拷貝的版本會(huì)是這個(gè)樣子: Folder : revision 1 Folder/File1 : revision 3 Folder/File2 : revision 2 這時(shí)如果你修改 File2 然后提交,就會(huì)失敗。因?yàn)榭蛻舳烁嬖V版本庫(kù) File2 是在版本 2 的基礎(chǔ)上作修改的,但是版本庫(kù)已經(jīng)處于版本 3 了。如果此時(shí)你執(zhí)行更新命令,就會(huì)將 File2 也變成版本 3 (當(dāng)然,你的本地修改還會(huì)在的)。 這個(gè)錯(cuò)誤還可能在你試圖創(chuàng)建分支或標(biāo)記時(shí)出現(xiàn)。答案永遠(yuǎn)都是:如果工作拷貝已經(jīng)過期,那就更新唄! 7、無法寫到標(biāo)準(zhǔn)輸出 TortoisePlink 使用的是標(biāo)準(zhǔn)的 plink 代碼,但不是針對(duì) Windows 編譯的,因而無法正常發(fā)送錯(cuò)誤信息。在 TSVN 的設(shè)置 -》 網(wǎng)絡(luò)里,將 SSH 客戶端指向標(biāo)準(zhǔn) plink,錯(cuò)誤信息就會(huì)輸出到一個(gè)命令行窗口中。設(shè)置好之后再像之前一樣運(yùn)行 TortoisePlink。 “無法寫到標(biāo)準(zhǔn)輸出” 表示 Plink 想要拋出一個(gè)錯(cuò)誤,但是因?yàn)?TortoisePlink 并沒有提供一個(gè) DOS 窗口,所以就沒沒有標(biāo)準(zhǔn)輸出來接收這個(gè)錯(cuò)誤信息。 知道是設(shè)置有問題后,可以先使用普通的 plink 程序,看到底是什么錯(cuò)誤,解決它。 如果普通 plink 掛住了,那就是參數(shù)不對(duì)(設(shè)置 -》 網(wǎng)絡(luò))。 另一個(gè)可能是 SSH 后臺(tái)程序找不到 svnserve 可執(zhí)行文件。以你將要使用的用戶(此處為 myuser)登錄到服務(wù)器,輸入 “which svnserve”,如果沒有顯示指向可執(zhí)行文件的路徑,就把該文件(以及其它 Subversion可執(zhí)行文件)設(shè)為對(duì)于該用戶可全局訪問。 8、400 服務(wù)器未能理解請(qǐng)求(400 Bad Request) REPORT request failed on ’。。。‘ REPORT of ’。。。‘: 400 Bad Request (http://。。。) 你的 DAV 請(qǐng)求被防火墻阻止了,多數(shù)防火墻都會(huì)這么這么干。你可以讓你的管理員更改防火墻的設(shè)置,或者以 https 訪問,如 https://svn.collab.net/repos/svn/ ,這樣你與版本庫(kù)之間的通信是經(jīng)過 SSL 加密的,防火墻無法阻止(如果它沒有封掉 SSL 端口的話)。 另外,現(xiàn)已確認(rèn)某些病毒掃描程序(如卡巴斯基)也會(huì)導(dǎo)致這個(gè)錯(cuò)誤。 9、403 對(duì)被請(qǐng)求頁(yè)面的訪問被禁止(403 Forbidden) PROPFIND request failed: 403 Forbidden 這有可能因?yàn)槟阍噲D訪問版本庫(kù)的父目錄(而不是版本庫(kù)本身)。你可以試著在 URL 尾部指定版本庫(kù)的名字,還有別忘了名字后面的斜杠 ‘/’。 有關(guān)導(dǎo)致此錯(cuò)誤的真正原因,請(qǐng)查看 Apache 的錯(cuò)誤日志。 10、405 HTTP Method Not Allowed PROPFIND Request Failed - Error 405 HTTP Method Not Allowed 這個(gè)錯(cuò)誤有幾種形式,可能的原因有以下幾個(gè): PROPFIND Request Failed 你試圖使用較低版本的TortoiseSVN瀏覽版本庫(kù)的父目錄。你可以試著在 URL 尾部指定版本庫(kù)的名字,或者升級(jí)TortoiseSVN到 1.2.3 版或更高。 PROPFIND Request Failed 你漏了 URL 末尾的斜杠 ‘/’,較舊版本的 TSVN 要求在版本庫(kù)名字后必須有斜杠,否則它會(huì)砍掉版本庫(kù)名字,等于試圖去訪問它的父目錄。 PROPFIND Request Failed 你可能正嘗試通過一個(gè)不允許 DAV 請(qǐng)求的代理訪問版本庫(kù)。通常你用網(wǎng)頁(yè)瀏覽器瀏覽版本庫(kù)是沒問題的,只在使用 svn 客戶端時(shí)才出錯(cuò)。你必須配置你的代理服務(wù)器或防火墻,以讓 DAV 請(qǐng)求通過,或者使用 https 來訪問,多數(shù)代理服務(wù)器無法分析加密過的信息包,因而也就無法阻止 DAV 請(qǐng)求了。 另一個(gè)可能是你正在運(yùn)行病毒掃描程序或防火墻,很多此類軟件會(huì)在你根本不知道的情況下就阻止了 DAV 請(qǐng)求,可以試一下禁用它們。 Lock Request Failed 你嘗試在工作拷貝中鎖定一個(gè)文件,而這個(gè)文件在版本庫(kù)中已經(jīng)不存在了。你需要先更新工作拷貝。 有關(guān)導(dǎo)致此錯(cuò)誤的真正原因,請(qǐng)查看 Apache 的錯(cuò)誤日志。 硬件是實(shí)在的,有模有樣的。軟件是程序性的。是一系列的指令。有了軟件,硬件才會(huì)實(shí)現(xiàn)更豐富的功能。 |
下一篇:支付寶小視頻保存辦法