Как вернуть файл к старой редакции в SVN

на моей работе мы используем svn. Я использую tortoisesvn на моем ПК с windows в качестве расширения оболочки windows/проводника. Я поддерживал *.c исходный файл в svn. Один из моих коллег внес некоторые изменения поверх моей версии и зарегистрировал ее, но не без полного тестирования всех своих изменений! В результате код теперь нарушается для некоторых тестовых случаев. Он сказал, что он не объединить его должным образом при проверке изменений в svn, следовательно, этот обрыв. Что угодно!
Есть другие команды, которые обновляют этот файл, так что это сломает их работу.

  1. какова команда для возврата этого конкретного файла к старой рабочей версии? (У него есть свои изменения локально, так что я бы не беспокоился об этом)

  2. Если нет прямой команды, чтобы сделать это, что теперь мой выход из этого беспорядка.

  3. когда я читал, я слышал что-то "обратное слияние". Что именно это такое, и помогает ли это мне, если да, как?

1
задан goldenmean
03.12.2022 15:35 Количество просмотров материала 3288
Распечатать страницу

4 ответа

обратное слияние. Это даст вам то, что вы хотите.

  1. объединить неверную ревизию с нужной ревизией в путь рабочей копии.
  2. проверьте свой код
  3. совершил файлы в репозиторий

теперь у вас будет исправлена ревизия, но в репозитории останется сломанная.

команда merge принимает три параметра: первый источник, второй источник, путь рабочей копии. Так как вы при откате оба источника будут иметь один и тот же путь, но разные номера ревизий. Более высокий номер ревизии идет первым.

пример командной строки:

merge svn://example.com/repo/folder/changedFile.txt@HEAD svn://example.com/repo/folder/changedFile.txt@215 ./folder/changedFile.txt

кнопка "журнал" в TortoiseSVN легко найти редакции.

1
отвечен Chris Ting 2022-12-04 23:23

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

2
отвечен Vinix Wu 2022-12-05 01:40

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

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

Скачать файл с вашего последнего возврат, который должен содержать последний рабочий код перед внесением изменений. TortoiseSVN позволяет вам сделать это, 'извлекая' указав номер ревизии, возможно, вам нужно исследовать репозиторий (используя TortoiseSVN Repository Explorer) и определить желаемый номер ревизии.

Это то, как я это делаю, работал раньше для меня:)

надеюсь, что это помогает.

0
отвечен jgemedina 2022-12-05 03:57

TortoiseSVN может выполнить обратное слияние. Перейдите на страницы журнала проекта SVN, щелкните правой кнопкой мыши на ревизии, которую вы хотите изменить и выберите "Отменить".

0
отвечен Jossie90 2022-12-05 06:14

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх