Возврат отдельного файла в SVN к определенной ревизии - PullRequest
170 голосов
/ 11 мая 2010

У меня есть файл, как показано ниже в репозитории SVN, который я хотел бы вернуть к предыдущей версии. Как это сделать в SVN? Я хочу только понизить этот конкретный файл до более старой версии, а не всего репозитория.

Спасибо.

$ svn log myfile.py
----------------------
r179 | xx | 2010-05-10

Change 3
----------------------
r175 | xx | 2010-05-08

Change 2
----------------------
r174 | xx | 2010-05-04

Initial

Ответы [ 14 ]

2 голосов
/ 21 февраля 2017

удивился, никто не упомянул это

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

svn merge -r HEAD:PREV file
1 голос
/ 01 августа 2018

Если вы хотите откатить отдельный файл из определенной ревизии и иметь возможность зафиксировать, выполните:

svn merge -c - [OldRev #] [Имя файла]

есть. svn merge -c -150 myfile.py

Обратите внимание на отрицательный номер ревизии

0 голосов
/ 15 марта 2019
sudo svn revert filename

это лучший способ восстановить один файл

0 голосов
/ 14 июля 2018

Альтернативный вариант для одного файла - «заменить» текущую версию файла более старой версией:

svn rm file.ext
svn cp svn://host/path/to/file/on/repo/file.ext@<REV> file.ext
svn ci

Это имеет добавленную функцию, что нежелательные изменения не отображаются в журнале для этого файла (т.е. svn log file.ext).

...