Список всех файлов, которые были изменены ч / б две ревизии пользователем
svn diff -r16369:HEAD --summarize
Выше списка команд все файлы, которые изменены ч / б две ревизии.
Но могу ли я найти все, что изменилось выше версии r16369 пользователем 'sherkhan'?
1 ответ
Используйте функцию поиска журнала:
svn log -r16369:HEAD --search sherkhan -v
Это может найти ревизии, где sherkhan упоминается в журнале, а не просто коммиттер.
Но вы могли бы написать скрипт для фильтрации, если вы действительно этого хотите. Или вы могли бы использовать --xml
и напиши xslt. Или вы можете использовать привязки, чтобы написать программу для поиска.
Я думаю, что вы хотите, зависит от того, как часто вы собираетесь использовать это и каковы ваши цели. Но это должно по крайней мере, чтобы вы начали.
Пример XSLT
Черт возьми, я пошел вперед и создал пример XSLT
Со следующим в user-change-paths.xslt:
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:param name="user"/>
<xsl:output method="text" omit-xml-declaration="yes" />
<xsl:template match="/">
<xsl:for-each select="log/logentry">
<xsl:if test="author=$user">
<xsl:for-each select="paths/path">
<xsl:value-of select="." /><xsl:text>
</xsl:text>
</xsl:for-each>
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
Затем выполните следующую команду:
svn log -r16369:HEAD --search sherkhan -v --xml | xsltproc --stringparam user sherkhan user-changed-paths.xslt - | sort -u