Як перевірити певну редакцію Subversion з командного рядка?


364

Я хочу перевірити певну версію папки в Subversion за допомогою командного рядка.

Я не бачу можливості вказувати номер редакції в TortoiseProc.exe,

TortoiseProc.exe /command:checkout <url>

Як отримати ревізію, яку я хочу? Чи TortoiseProc.exeє правильним інструментом того, що я хочу зробити?

Відповіді:


469

Якщо ви вже перевірили її локально, ви можете cdперейти до місця перевірки, а потім використати цей синтаксис:

$ svn up -rXXXX

ref: Ознайомтесь з певною редакцією на підривній команді


Чомусь це для мене нічого не робить. Ще на старій редакції.
ІгорГанапольський

2
@IgorGanapolsky Ви локально змінили файл, який ви намагаєтесь оновити?

Як зробити жорсткий скидання? (Ігнорування конфліктів?)
Діліп Радж Барал

313

Або

svn checkout url://repository/path@1234

або

svn checkout -r 1234 url://repository/path

3
Мені довелося видалити простір після -r, тому "-r1234" працював на мене.
Ілля Лофгрен

257

Будь-яка причина для використання TortoiseProc замість звичайного командного рядка svn?

Я б використовував:

svn checkout svn://somepath@1234 working-directory

(щоб отримати версію 1234)


36

Ніколи не слід використовувати TortoiseProc.exe як клієнтський рядок клієнта Subversion! TortoiseProc слід використовувати лише для автоматизації графічного інтерфейсу TortoiseSVN. Дивіться примітку в Посібнику TortoiseSVN :

Пам’ятайте, що TortoiseSVN є клієнтом GUI, і цей посібник з автоматизації показує вам, як зробити діалогові вікна TortoiseSVN, щоб збирати дані користувача. Якщо ви хочете написати сценарій, який не потребує введення даних, вам слід скористатися офіційним клієнтом командного рядка Subversion.

Використовуйте клієнтський рядок Subversion svn.exe . З клієнтом командного рядка ви можете

Ви можете помітити, що за допомогою svn checkoutі svn exportви можете ввести номер REV як --revision REVаргумент і як слід @REVпісля URL-адреси. Перша називається оперативною ревізією, а друга називається ревізією прив'язки. Прочитайте SVNBook для отримання додаткової інформації про прив'язку та концепцію оперативного перегляду .


8

svn checkout - це версія, де ваш сховище знаходиться на іншому сервері

Використовуйте svn logкоманду, щоб дізнатися, які версії доступні:

svn log

Які відбитки:

------------------------------------------------------------------------
r762 | machines | 2012-12-02 13:00:16 -0500 (Sun, 02 Dec 2012) | 2 lines

------------------------------------------------------------------------
r761 | machines | 2012-12-02 12:59:40 -0500 (Sun, 02 Dec 2012) | 2 lines

Зверніть увагу на номер r761. Ось опис команди:

svn export http://url-to-your-file@761 /tmp/filename

Я використовував цю команду спеціально:

svn export svn+ssh://machines@mywebsite.com/home1/oct/calc/calcFeatures.m@761 calcFeatures.m

Що викликає перевірку calcFeatures.m revision 761 у поточному каталозі.




2

Здається, ви можете використовувати браузер сховища. Клацніть кнопку ревізії вгорі праворуч і змініть її на потрібну редакцію. Потім клацніть правою кнопкою миші файл у веб-переглядачі та використовуйте «Копіювати в робочу копію ...», але змініть ім’я файлу, яке воно перевірить, щоб уникнути зіткнення.


1

Вам доведеться використовувати svn безпосередньо:

svn checkout URL[@REV]... [PATH]

і

svn help co

дає вам трохи більше допомоги.


2
наскільки я бачу, я думаю, що приклад може допомогти. ви включаєте чи не включаєте дужки? що про 3 періоди? як щодо місця після 3 періодів? Які символи є буквальними, а які - заповнювачами, а які додаються символами для заповнювачів?
ahnbizcad

0

Перейдіть у папку та скористайтеся командою:

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