Робоча копія оновлення SVN


133

Я не можу виконати SVN. Я отримую цю помилку:

org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)

Як це можна виправити?

Відповіді:


154

Потрібно оновити клієнт-підривник як мінімум до 1,7.

З клієнтом командного рядка вам потрібно вручну оновити формат робочої копії, видавши команду svn upgrade:

Оновлення робочої копії

Subversion 1.7 вносить істотні зміни до формату робочої копії. У попередніх випусках Subversion Subversion автоматично оновлювала робочу копію до нового формату, коли виконувалася операція запису. Subversion 1.7, однак, зробить це ручним кроком. Перш ніж використовувати Subversion 1.7 зі своїми робочими копіями, від користувачів буде потрібно запустити нову команду svn upgradeдля оновлення метаданих до нового формату. Ця команда може зайняти деякий час, а для деяких користувачів може бути більш практичним просто оформити нову робочу копію.
- Примітки до випуску 1.7

TortoiseSVN здійснить оновлення робочої копії з наступною операцією запису:

Оновлення робочої копії

Subversion 1.7 вносить істотні зміни до формату робочої копії. У попередніх випусках Subversion автоматично оновлював робочу копію до нового формату, коли виконувалася операція запису. Subversion 1.7, однак, зробить це ручним кроком.

Перш ніж використовувати існуючу робочу копію з TortoiseSVN 1.7, спочатку потрібно оновити формат. Якщо ви клацніть правою кнопкою миші на старій робочій копії, TortoiseSVN показує вам лише одну команду в контекстному меню: Оновити робочу копію.
- Примітки до випуску TortoiseSVN 1.7


2
Коли я svn upgrade
видаю

@geneorama: ви svnвстановили? ( sudo apt-get install svn)
knittl

5
Дякую за відповідь! У мене був встановлений svn (subversion), але це була версія 1.6, в якій немає upgradeкоманди. Ubuntu 12.04 не встановив 1.7 без додавання нового ppa. askubuntu.com/questions/65468/…
geneorama

@genorama Ось інструкції щодо оновлення svn для Mac OS, які працюватимуть, якщо починати з 1.6 redfinsolutions.com/blog/update-subversion-mac-os-x . Для Linux я думаю, що це схоже.
Майк Енг

1
"Ця команда може зайняти деякий час, і для деяких користувачів може бути більш практичним просто оформити нову робочу копію." Я виконую команду, не знаючи, чого очікувати, через 2 секунди відповіді консолі оновлені '.' : P
rabidmachine9

57

від затемнення ви можете вибрати проект, клацніть правою кнопкою миші-> команда-> оновлення


Неможливо знайти варіант оновлення
Аміт Тапер

6

На MacOS:

  1. Отримайте останні скомпільовані бінарні файли SVN для клієнтів звідси .
  2. Встановити.
  3. Додайте бінарні файли до контуру (останній екран встановлення пояснює, як).
  4. Відкрийте термінал і запустіть таку команду у каталозі вашого проекту:

    оновлення svn


3

Якщо ви щойно оновили SVN 1.7 на своїй машині (як я щойно), і у вашій робочій області Eclipse є багато проектів, які потребують оновлення, ви можете зробити наступне у вікні терміналу для Unix-baesd систем:

cd [eclipse/workspace] # <- you supply the actual path here

for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;

Трохи погуглившись, я виявив, що здається рівнозначним для користувачів Windows:

http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html

Дивіться відповідь Олексія Щербака на півдорозі сторінки.


2

Ця проблема через те, що ви намагаєтеся скомпілювати проект, у якому є файли OLder SVN, ніж ви використовуєте в даний час.

У вас є два рішення для вирішення цієї проблеми

  1. встановити версію 1.6 SVN, сумісну з файлами SVN проекту
  2. спробуйте оновити проект .. (не завжди працює).

2

Ви також можете отримати дивні повідомлення про необхідність оновлення робочої копії, коли у вас є інші робочі копії, вкладені у вашу. У мене виникла ця проблема із проектом Symphony, коли деякі папки рамки працюють копією, і, мабуть, не були очищені належним чином до їх публікації.

У цьому випадку просто зробіть пошук файлу .svnта видаліть .svnпапки, які вам не потрібні (звичайно, не видаляйте свої в корені).


1

Після оновлення до останньої версії Tortoise-SVN мені потрібно було спочатку зробити "Upgrade" (на відміну від "Update"!).


1

Якщо ви отримуєте цю помилку від Netbeans (7.2+), це означає, що ваша окремо встановлена ​​версія Subversion є вищою за версію в netbeans. У моєму випадку Netbeans (v7.3.1) мав SVN v1.7, і я просто оновив свій SVN до v1.8.

Якщо ви заглянете Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane), встановіть " Кращий клієнт = CLI" , тоді ви можете встановити шлях до встановленого SVN, який для мене бувC:\Program Files\TortoiseSVN\bin .

Більше можна дізнатися з питань поширених запитань щодо клієнтів Subversion Netver .



0

Ви можете оновити до Subversion 1.7. Для оновлення до Subversion 1.7 вам потрібно запустити існуючий проект у Xcode 5 або вище. Це підкаже попередження ' The working copy ProjectName should be upgraded to Subversion 1.7' (показано на скріншоті нижче).

Знімок екрана для попередження

Ви повинні вибрати "Upgrade кнопку ' для переходу на Subversion 1.7. Це займе трохи часу.

Якщо ви використовуєте термінал, тоді ви можете оновити до Subversion 1.7, виконавши команду нижче в каталозі проекту: оновлення svn

Зверніть увагу, що раз у вас є upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.

Детальнішу інформацію див. У документах Apple.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.