У меня есть ветвь Subversion, вычисленная с помощью TortoiseSVN в Windows. У меня есть файл, назовите его myfile.txt, который я хочу переименовать, скажем, mynewfile.txt. Однако я хочу сохранить myfile.txt и просто вернуть его обратно к предыдущей версии, скажем, r15. Итак, я хочу, чтобы myfile.txt имел контент из r15 и mynewfile.txt, чтобы иметь содержимое myfile.txt из rHEAD. Я надеялся, что смогу как-то сделать это с помощью команд Subversion, чтобы сохранить историю файла. Таким образом, когда я фиксирую это, и вы смотрите на изменения, вы можете видеть, что mynewfile.txt - это просто переименование myfile.txt, а myfile.txt теперь имеет старое содержимое с r15. Это возможно? Должен ли я просто переименовать myfile.txt -> mynewfile.txt, а затем переделать файл myfile.txt, вручную скопировать содержимое с r15 в него?переименуйте файл и замените старое имя файла на файл из предыдущей версии в Subversion
0
A
ответ
4
svn cp myfile.txt mynewfile.txt
svn co -r15 myfile.txt
svn commit
Я считаю, что это сохранит историю, как вы пожелаете.
EDIT: TortoiseSVN, не осознавал! Новые шаги:
- Открыть Repo Browser и щелкните правой кнопкой мыши myfile.txt
- Выберите «Копировать в ...» и выберите
mynewfile.txt
в качестве нового имени. - правая кнопка мыши myfile.txt в извлеченной копию и выберите «Обновить до ревизии» и выберите 15.
- Commit.
1
Вам нужна вторая рабочая копия при старой ревизии (достаточно скопировать каталог и обновить только один файл). Тогда вам необходимо выполнить следующие шаги:
- в рабочей копии ГОЛОВЫ Выберите
rename
из контекстного СВН меню, чтобы переименовать файл - перейти на OLD рабочую копию и перетащить старый файл в рабочей копии ГОЛОВЫ правой кнопкой мыши
- выбрал
svn copy versioned items here
из появившегося меню - фиксации (убедитесь, что текст статуса говорит «заменить (+)» для старого файла и «добавлен (+)» для нового файла)
@Sarah Vessels Вам необходимо установить клиент командной строки (которая должна быть той же версией svn, что и tortoisesvn), когда вы хотите использовать командную строку. Они не включены в TSVN. – Rudi