您好,登錄后才能下訂單哦!
本篇內容介紹了“如何解決eclipse本地svn插件與庫版本不一致更新等操作出錯問題”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
更新svn項目提示:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: The working copy at 'D:\Administrator\Workspaces\MyEclipse 2017 CI\huamu-goodemall'
is too old (format 29) to work with client version '1.9.3 (r1718519)' (expects format 31). You need to upgrade the working copy first.
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: The working copy at 'D:\Administrator\Workspaces\MyEclipse 2017 CI\huamu-goodemall'
is too old (format 29) to work with client version '1.9.3 (r1718519)' (expects format 31). You need to upgrade the working copy first.
大致意思:項目庫版本為29.,你的svn插件版本為31,你需要更新項目的版本標記到1.93
解決方法1:單擊項目右鍵
解決方法2:打開svn項目本地路徑文件夾
將項目代碼的svn版本升級
記錄下其他各種svn常見使用過程中的錯誤:
SVN各種錯誤提示產生原因及處理方法大全
1.
svn: Server sent unexpected return value (500 Internal Server Error) in response to OPTIONS request for 'http://svn.moon.ossxp.com/svn/test'
錯誤的用戶名
檢查登錄的用戶名是否輸入錯誤
svn: 服務器發送了意外的返回值(500 Internal Server Error),在響應 “OPTIONS” 的請求 “http://svn.moon.ossxp.com/svn/test” 中
2.
svn: OPTIONS of 'http://svn.moon.ossxp.com/svn/test': authorization failed: Could not authenticate to server: rejected Basic challenge (http://svn.moon.ossxp.com)
錯誤的口令
用正確的用戶名/口令登錄
svn: 方法 OPTIONS 失敗于 “http://svn.moon.ossxp.com/svn/test”: 認證失敗: Could not authenticate to server: rejected Basic challenge (http://svn.moon.ossxp.com)
3.
svn: Server sent unexpected return value (403 Forbidden) in response to OPTIONS request for 'http://svn.moon.ossxp.com/svn/test'
用戶無權限
聯系管理員,為用戶分配權限
svn: 服務器發送了意外的返回值(403 Forbidden),在響應 “OPTIONS” 的請求 “http://svn.moon.ossxp.com/svn/test” 中
4.
svn: OPTIONS of 'http://www.moon.ossxp.com/svn/test': 200 OK (http://www.moon.ossxp.com)
服務器地址錯誤,是普通Web頁面,不支持SVN的 WebDAV 協議
確認輸入正確的 SVN 服務地址。可以在瀏覽器中輸入該地址進行確認
svn: 方法 OPTIONS 失敗于 “http://www.moon.ossxp.com/svn/test”: 200 OK (http://www.moon.ossxp.com)
5.
The version of your subversion (client) is below 1.5.0, upgrade to 1.5.0 or above. SVN below 1.5.0 can not handle mergeinfo properly. It can mess up our automated merge tracking!
是由于客戶端的軟件版本低于1.5.0造成的。服務器端對客戶端軟件版本進行了限制,以免對合并跟蹤破壞。
升級本地的Subversion客戶端軟件到1.5.0或以上版本。
6.
svn: This client is too old to work with working copy '.'. You need to get a newer Subversion client, or to downgrade this working copy. See http://subversion.tigris.org/faq.html#working-copy-format-change for details.
安裝了多個版本的SVN客戶端(TSVN,Subclipse,...),且各個客戶端的版本不一致。高版本的SVN客戶端會自動更新本地工作目錄中的 .svn 目錄下的文件格式,導致舊版本的SVN客戶端不能繼續訪問該本地工作目錄
將本機安裝的所有的SVN客戶端都更新到同一個大版本,以避免本地工作目錄的格式不一致
svn: 此客戶端對于工作副本 “.” 太舊。你需要取得更新的 Subversion 客戶端,或者降級工作副本。 參見 http://subversion.tigris.org/faq.html#working-copy-format-change 以獲得更詳細的信息。
7.
svn: Working copy 'trunk/src' locked svn: run 'svn cleanup' to remove locks (type 'svn help cleanup' for details)
異常操作導致目錄沒有解鎖。
一個簡單的重現方法:在 .svn 目錄下創建空的名為 lock的文件
使用命令行 "svn cleanup" 或者類似的“清理”動作刪除鎖定
svn: 工作副本“trunk/src”已經鎖定 svn: 運行“svn cleanup”刪除鎖定 (輸入“svn help cleanup”得到用法)
8.
日志中沒有作者信息: ------------------------------------ r9 | (沒有作者信息) | … ossxp.com anonymous commit test
匿名提交導致沒有作者信息
檢查版本庫權限控制,禁止匿名提交
9.
正在發送 ... 傳輸文件數據.svn: 提交失敗(細節如下): svn: Commit blocked by pre-commit hook (exit code 1) with output: 提交說明至少應包含 4 個字符, 或者太簡單了。
這是由于用戶提交的提交說明(commit log),太過簡單了。在提交時需要輸入有意義的 commit log。
寫有意義的提交說明,或者請求管理員更改版本庫插件
10.
增加 Logger.c 傳輸文件數據.svn: 提交失敗(細節如下): svn: Commit blocked by pre-commit hook (exit code 1) with output: Wide character in print at /opt/svn/svnroot/myrepos/hooks/scripts/check-case-insensitive.pl line 259. 發現文件名大小寫沖突: trunk/src/Logger.c 已經存在于 logger.c
管理員設置了對新增文件是否重名(只有大小寫不同)的文件進行檢查。文件名只有大小寫不同,在Windows上進行檢出會造成麻煩
不要添加重名(僅大小寫不同)文件
增加 src/文件aBc.txt 傳輸文件數據.svn: 提交失敗(細節如下): svn: Commit blocked by pre-commit hook (exit code 1) with output: Clash: '/trunk/src/文件aBc.txt' '/trunk/src/文件abc.txt'
11.
svn: While preparing '/home/jiangxin/tmp/svn.test/trunk/src/README.txt' for commit svn: Inconsistent line ending style
提交的文件已經設置了 svn:eol-style 屬性,但是該文本內的換行符有DOS的換行符CRLF,也有Unix換行符LF,不一致!
統一該文本文件內的換行符。Linux 下可以用dos2unix, unix2dos, sed等命令。Windows下可用UltraEdit 進行轉換。
svn: 當為提交操作準備“/home/jiangxin/tmp/svn.test/trunk/src/README.txt”時 svn: 不一致的行結束樣式
12.
svn: Failed to add file 'Makefile': an unversioned file of the same name already exists
執行更新(svn up)時報錯。因為其他人新增一個文件到服務器,而本地卻存在一個同名文件(未版本控制)
先將本地重名文件改名,再執行"svn up",之后再比較、合并文件。或者執行 "svn up --force"
svn: 增加文件 'Makefile' 失敗: 同名未版本控制的文件已存在
13.
Adding src/Makefile svn: Commit failed (details follow): svn: File '/svn/test/trunk/src/Makefile' already exists
添加新文件,提交時報錯。因為其他人已經先于我增加了該文件。
先執行更新操作("svn up"),再根據提示進行操作:合并/提交...
增加 src/Makefile svn: 提交失敗(細節如下): svn: 文件“/svn/test/trunk/src/Makefile”已存在
14.
$ svn up Conflict discovered in 'Makefile'. Select: (p) postpone, (df) diff-full, (e) edit, (mc) mine-conflict, (tc) theirs-conflict, (s) show all options: p C Makefile Updated to revision 5. Summary of conflicts: Text conflicts: 1
多人同時編輯同一個文件時,可能會遇到沖突。別人先于我提交,則當我提交時要先更新。更新可能遇到不能自動解決的沖突
使用工具進行沖突解決
$ svn up 在 “Makefile” 中發現沖突。 選擇: (p) 推遲,(df) 顯示全部差異,(e) 編輯, (mc) 我的版本, (tc) 他人的版本, (s) 顯示全部選項: p C Makefile 更新到版本 5。 沖突概要: 正文沖突:1
15.
svn: Commit failed (details follow): svn: File 'Makefile' is out of date svn: File not found: transaction '6-d', path '/trunk/src/Makefile'
提交的文件已被他人刪除
先執行更新操作("svn up"),再根據提示解決該樹沖突:刪除文件或繼續添加...
svn: 提交失敗(細節如下): svn: 文件 “Makefile” 已經過時 svn: File not found: transaction '6-c', path '/trunk/src/Makefile'
16.
svn: Commit failed (details follow): svn: File or directory '/trunk/XXX' is out of date; try updating svn: resource out of date; try updating
基于舊版本修改是不允許的
先更新("svn update"),再提交
svn: 提交失敗(細節如下): svn: 文件或目錄 “/trunk/XXX” 已經過時;請先更新 svn: resource out of date; try updating
17.
svn: DAV request failed; it's possible that the repository's pre-revprop-change hook either failed or is non-existent svn: At least one property change failed; repository is unchanged svn: Error setting property 'log': Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook
修改提交說明等操作屬于高風險操作,因為該操作沒有被版本控制,屬于不可恢復的操作。缺省禁止。
請聯系管理員,啟用該版本的相關鉤子,允許修改“版本屬性”。參見 管理員鉤子設置
svn: DAV 請求失敗;可能是版本庫的 pre-revprop-change 鉤子執行失敗或者不存在 svn: 至少有一個屬性變更失敗;版本庫未改變 svn: 設置屬性 “log” 出錯: Repository has not been enabled to accept revision propchanges; ask the administrator to create a pre-revprop-change hook
18.
傳輸文件數據.svn: 提交失敗(細節如下): svn: Commit blocked by pre-commit hook (exit code 1) with output: ==================== trunk/src/File.c : 屬性 svn:mime-type 或者 svn:eol-style 沒有設置 ==================== 管理員已經啟用換行符屬性檢查。每一個新添加的文件必須 指定換行符。如果 svn:mime-type 屬性為文本文件,則 必須設置 svn:eol-style 屬性。 對于二進制文件,執行如下命令: svn propset svn:mime-type application/octet-stream path/of/file 對于文本文件,可以執行如下命令: svn propset svn:mime-type text/plain path/of/file svn propset svn:eol-style native path/of/file 為了避免每次添加文件手動設置,可以啟用自動屬性設置 ...
管理員啟用了檢查新文件換行符的擴展
為新增文件設置正確的 svn:mime-type 和/或 svn:eol-style 屬性
“如何解決eclipse本地svn插件與庫版本不一致更新等操作出錯問題”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。