Умный экспорт из SVN при помощи TortoiseSVN
Достаточно давно я столкнулся с проблемой, что в хорошей и правильной программе TortoiseSVN, нету такой необходимой и желанной вещи, как экспорт только тех файлов, которые были затронуты определенными ревизиями. Особенно начинаешь страдать, когда приходится перезаливать на сервер весь проект, куда входят достаточно увесистые библиотеки и фреймворки. Можно, конечно, не включать библиотеки в Subversion, но это уже тема для другой беседы.
И вот, совсем недавно, один очень хороший гуру и друг совершенно ненавязчиво рассказал мне, как изящно и красиво решить эту проблему.
Первое, что нам нужно сделать — это зайти в папку, где у нас лежит рабочая копия и вызвать там контекстное меню. На данном этапе стоит отметить, что у вас уже должна быть установлена программа TortoiseSVN, использование которой, собственно, не требует никаких сверхъестественных навыков.
Так вот, в вызванном контекстном меню нужно выбрать пункт «TortoiseSVN» ? «Show log». Перед вами предстанет следующего вида окно:
В этом окне нужно произвести следующие действия: выбрать ревизию, начиная с которой нужно будет собрать измененные и добавленные файлы, зажать Ctrl, и выбрать ревизию, которой нужно закончить (в 90% случаев, это последняя ревизия). В общем, в итоге, должны быть выделены две ревизии. Теперь, вызываем контекстное меню следующего вида:
В этом самом меню выбираем пункт «Compare revisions». Получаем список файлов, которые были затронуты ревизиями между выбранными. Выглядит это примерно так:
Не трудно догадаться, что в этом окошке мы выделяем все файлы, вызываем контекстное меню и выбираем пункт «Export selection to…». Выбираем папку, куда сложить файлы, и жмем «OK».
Все готово!
Теперь обновить сайт или сделать ресурс-патч не составит никакого труда.
З.Ы. Материал стырен с Хабра. Спасибо автору (http://habrahabr.ru/post/15124/)