Wednesday, March 9, 2011

SVN howto command line

Десять последних коммитов, для удобства

svn log -l 10


Патч сделать

svn di > 1.patch


Патч применить

patch -p0 < 1.patch


Список изменений конкретной ревизии

svn di -r 65559:65565 --no-diff-deleted > diff.patch


Список изменений локально

svn st | grep "M "


Посмотреть изменения с помощью Meld

svn di --diff-cmd meld


Удалить неверсионные файлы

svn st | grep "? " | sed 's/? //g' | xargs rm



Бинарный патч сделать

svn diff --force --diff-cmd /usr/bin/diff -x "-au --binary" > JCR-1487_for_1.10.x.patch


Бинарный патч применить

patch -p0 --binary -i JCR-1487_for_1.10.x.patch


Удалить из свн уже локально удалённые файлы

svn st | grep ! | sed 's/! //g' | xargs svn rm


Добавить неверсионные файлы

svn st | grep ? | sed 's/? //g' | xargs svn add


Реверт модифицированных

svn st | grep "M " | sed 's/M //g' | xargs svn revert


Копирование файла из истории свн

svn cp http://svn.exoplatform.org/svnroot/exoplatform/blabla/SuperClass.java@4723 http://svn.exoplatform.org/svnroot/exoplatform/blabla


Мердж ревизии с применением полученного патча локально в текущую директорию

svn merge -c 27571 http://svn.exoplatform.org/svnroot/exoplatform/projects/blabla



Есть программа с GUI smartsvn, кому с консолью тяжело можете использовать её.

No comments: