В данном посте решил закрепить для себя нюансы типичных операций при работе с системой контроля версий SVN из клиента Tortoise.
Commit и Update
Здесь всё работает без сбоев и особых нюансов я не заметил.
Commit жмем когда выделена рабочая копия и файл изменен после работы с ним. Просто жмем Commit и обновления уходят на сервер, в репозиторий.
Update – когда-что то изменили на сервере в репозитории и нужно обновить рабочую копию.
Revert to this Revision и Update item To Revision
Выполняют примерно одну и ту же функцию – откат к той или иной ревизии, но Revert to this Revision, насколько я понял, хитро изменяет файлы на клиенте, что вроде как съедает меньше трафика. Потому как когда я их удалял, а потом нажимал на Revert, то система – теряла файлы.
Update item To Revision просто напросто закачивает их с сервера на клиент, перед этим желательно удалить старую версию из рабочей копии – тогда всё обновится чисто.
Я ещё не совсем разобрался с тем как это в точности работает, но железный гарантированный способ отката в моем случае это удаление из рабочей копии (папки) всех файлов, и потом нажатие на Update item To Revision из ShowLog рабочей папки.
С Revert to this Revision периодически возникали всякие глюки – файлы обновлялись частично. Не знаю, возможно что-то неправильно делал, так как работаю 3-й день с SVN.
Checkout
Если в логе правой кнопкой мыши тыкнуть на одну из ревизий, то можно увидеть так называемый Checkout. Это, насколько я понял – создание новой рабочей копии. Здесь нужно указать, что грузим с сервера и куда. После этого на папке клиента появляется зеленая галочка.