Ответ 1
svn log --xml
Наличие журналов, выводимых в xml, делает их очень легкими для анализа и анализа.
Какая ваша любимая неочевидная функция svn?
svn log --xml
Наличие журналов, выводимых в xml, делает их очень легкими для анализа и анализа.
Добавлено в svn 1.6: сокращенное обозначение ^
каретки для сокращения URL-адресов подрывной деятельности при использовании командной строки. Символ каретки может использоваться вместо части URL-адреса через имя репозитория.
Пример:
svn switch ^/myProject/branches/fooBranch
вместо
svn switch http://machine22/repos/SandboxRepo/myProject/branches/fooBranch
Скрипты подключения (start-commit, pre-commit, post-commit) - отличные инструменты для системы сборки, основанной на SVN.
Другой, который, вероятно, слишком "очевиден", вызывает "svn export" из сборки script. Это действительно хороший способ развернуть файлы в какой-либо целевой каталог (например, веб-сайт), потому что вы получаете чистую копию без скрытых файлов .svn. Это намного лучше, чем обновление удаленной рабочей копии "развертывания".
внешних ссылок.
Прекрасная возможность вытащить сторонние библиотеки в вашу базу кода и поддерживать их в актуальном состоянии.
svn blame
, конечно. Получил знать, чья это вина.
Получение истории ветки из точки ветвления:
svn log --stop-on-copy
Subversion api и клиентские привязки, которые построены поверх этого.
Большинство систем SCM представляют собой комбинацию инструментов, которые позволяют вызывать их через командную строку, но подрывная программа разработана как стабильный API, который будет использоваться несколькими клиентами. Он просто предоставляет клиент командной строки.
TortoiseSVN, AnkhSVN, SharpSvn и десятки других приложений и библиотек [1 ] не было бы там без подрывной операции, являющейся api.
(Я рад, что некоторые другие/новые реализации SCM начинают понимать, что клиент командной строки недостаточно, чтобы быть успешным)
[1] Страница ссылки теперь отключена, но вы можете увидеть старую версию на http://svn.apache.org/repos/asf/subversion/branches/1.6.x/www/links.html
Чтобы отменить набор изменений из вашей рабочей копии (например, 4321):
svn merge -c -4321 .
svn checkin
Или несколько наборов изменений:
svn merge -c -4321,-5432 .
Моя любимая неочевидная особенность svn заключается в том, как она помещает все мои исходные каталоги с подкаталогами метаданных .svn.;)
svn log -r BASE: HEAD (возможно, с опцией v)
Показывает, что произошло между версией и версией главы. Обычно говорит вам, кто тоже сломал сборку.
"svn: ignore" свойство
Подвижность api и библиотеки. Вы можете использовать центральный репозиторий SVN, даже если вы предпочитаете работать с распределенным VCS - либо с помощью SVK native SVK, либо, например, Mercurial (через мост). Хороший apis также означает, что возможны лучшие инструменты - они могут работать с SVN напрямую, вместо того, чтобы использовать клиент командной строки и пытаться проанализировать результаты.
svn diff
, даже если вы в автономном режиме и можете считать, что diff: ing невозможно.
Поддержка кросс-платформенной поддержки имен файлов Unicode
Я работаю в японской компании, поэтому поддержка имени файла Unicode для Subversion отличная. Я был разочарован, увидев, как плохо имена файлов Unicode обрабатываются git и Mercurial в сравнении (особенно в Windows).
(Я также понимаю, насколько хорошо Subversion обрабатывает Unicode в сообщениях журналов и т.д.)
В новых версиях: интерактивное разрешение конфликтов. Таким образом, конфликты не нужно разрешать вручную (в большинстве случаев это очень тривиально для этого, это просто раздражает, если это нужно сделать для большой партии файлов). Но на самом деле, обработка конфликтов в целом (то есть, что он блокирует вас от конфликтов конфликтующих файлов).
И второй ответ:
svn status --depth files <path>
Эта поддержка глубины, введенная в 1.5, делает Subversion намного быстрее, чем раньше, из других инструментов.
Выполнение откат путем объединения прежней версии с HEAD.
натолкнулся на поиск чего-то., здесь любимый невкусный с моей стороны.. вы можете скопировать вставку "рабочей копии svn" на любую другую машину или любую другую ОС, ее работы, как если бы она была проверена там. Это работает, даже если он был проверен другим пользователем!
Возможность настроить ведомый репозиторий для зеркального отображения основного. Поэтому удаленная группа может делать все свои чтения из локальной копии. Это действительно ускоряет развитие.
svn cleanup
Когда это также говорит "Запустите очистку svn для очистки"
find . |grep \\.svn/lock |xargs rm
с точки зрения администратора, svndumpfilter exclude $file
может существенно уменьшить размер вашего репозитория.