Что корректный путь состоит в том, чтобы восстановить удаленный файл от SVN?

Ни функции стрелок , ни метод forEach () не совместимы в IE11. Вам нужно переписать вышесказанное, используя ES5 следующим образом:



Или, если вы предпочитаете использовать ES6 для написания своего JavaScript, вы можете использовать цепочку инструментов, например BabelJS для компиляции вашего JavaScript ES6 в JavaScript ES5 на производстве.

112
задан leander 19 September 2012 в 22:47
поделиться

7 ответов

Использование svn слияние:

svn merge -c -[rev num that deleted the file] http://<path to repository>

Так пример:

svn merge -c -12345 https://svn.mysite.com/svn/repo/project/trunk
             ^ The negative is important

Для TortoiseSVN (я думаю...)

  • Щелчок правой кнопкой в Проводнике, перейдите к TortoiseSVN-> Слияние...
  • Удостоверяются, "Объединяются, диапазон изменений" выбран, нажмите Далее
  • В текстовом поле "Revision range to merge", укажите пересмотр, который удалил Проверку файла
  • флажок "Reverse merge", нажмите Далее
  • , Нажимают Merge

That, полностью не тестируется, как бы то ни было.

<час>

Отредактированный OP: Это работает над моей версией TortoiseSVN (старый вид без следующей кнопки)

  • Переходят к папке, что материал был обвинен от [1 110]
  • Щелчок правой кнопкой в Проводнике, перейдите к TortoiseSVN-> Слияние...
  • в раздел From вводит пересмотр, который сделал удаление
  • в , раздел To вводит пересмотр перед удалением.
  • Щелчок "слияние"
  • фиксация

прием должен объединиться назад . Благодарность sean.bright для указания на меня в правильном направлении!

<час>

Редактирование: Мы используем различные версии. Метод я описал работавший отлично с моей версией TortoiseSVN.

Также знаменитый то, что, если было несколько изменений в фиксации, Вы - обратное слияние, Вы захотите вернуться те другие изменения, после того как слияние сделано перед фиксацией. Если Вы не сделаете, то те дополнительные изменения будут также обращены.

56
ответ дан BCS 24 November 2019 в 02:46
поделиться

Для полноты это - то, что Вы нашли бы в книге svn, знали Вас, что искать. Это - то, что Вы уже обнаружили:

Изменения отмены

Возрождение Удаленные Объекты

То же самое, от более свежего (и подробный) версия книги:

Изменения отмены

Возрождение Удаленные Объекты

27
ответ дан gbarry 24 November 2019 в 02:46
поделиться

При использовании Черепахи SVN необходимо смочь вернуться изменения от просто что пересмотр в рабочую копию (эффективно выполняющий обратное слияние), то сделайте другую фиксацию, чтобы повторно добавить файл. Шаги для следования:

  1. Обзор к папке в рабочей копии, где Вы удалили файл.
  2. Переходят к repo-браузеру.
  3. Обзор к пересмотру, где Вы удалили файл.
  4. В списке изменения, найдите файл, который Вы удалили.
  5. Щелчок правой кнопкой по файлу и идут для "Возвращения изменений от этого пересмотра".
  6. Это восстановит файл к Вашей рабочей копии, сохраняя историю.
  7. Фиксация файл для добавления его назад в репозиторий.
5
ответ дан davogones 24 November 2019 в 02:46
поделиться

Необходимо смочь просто проверить один файл, который Вы хотите восстановить. Попробуйте что-то как svn co svn://your_repos/path/to/file/you/want/to/restore@rev, где rev последний пересмотр, в котором существовал файл.

я должен был сделать точно это только что и если я помню правильно, с помощью -r, опция к svn не работала; я должен был использовать :rev синтаксис. (Хотя я, возможно, помнил это назад...)

0
ответ дан David Z 24 November 2019 в 02:46
поделиться

С черепаха SVN :

, Если Вы еще не фиксировали своих изменений, можно сделать возвращение на родительской папке, где Вы удалили файл или каталог.

, Если Вы уже фиксировали удаленный файл, затем можно использовать браузер репозитория, измениться на пересмотр, где файл все еще существовал, и затем используйте команду Copy для... из контекстного меню. Введите путь к своей рабочей копии как цель, и удаленный файл будет скопирован от репозитория до Вашей рабочей копии.

4
ответ дан VonC 24 November 2019 в 02:46
поделиться

Проблема с выполнением слияния svn, предложенного Шоном Брайтом, заключается в том, что оно повторно вводит другие изменения, сделанные в той же ревизии, что и удаление. Копия svn - это более целенаправленная операция, которая затрагивает только удаленные файлы.

Используя Tortoise SVN, вы можете воскресить файл, который был удален из каталога вашей рабочей копии и из более поздних ревизий SVN, через копию svn следующим образом:

  • Перейдите к папке с рабочей копией, которая ранее содержала файл.
  • Щелкните правой кнопкой мыши папку в проводнике, выберите TortoiseSVN -> Показать журнал.
  • Щелкните правой кнопкой мыши номер версии непосредственно перед ревизией, которая удалила файл файл и выберите «Обзор репозитория».
  • Щелкните правой кнопкой мыши удаленный файл, выберите «Копировать в рабочую копию ...» и сохраните.

Удаленный файл теперь будет в папке рабочей копии.

167
ответ дан 24 November 2019 в 02:46
поделиться

Самый простой способ, который я смог восстановить файлы и не потерять историю изменений используется SVN copy , приведенный выше пример слияния мне кажется более сложным способом достижения того же.

4
ответ дан 24 November 2019 в 02:46
поделиться
Другие вопросы по тегам:

Похожие вопросы: