SVN 获取版本库的修订计数
SVN Getting The Count Of Revisions Of A Repository
我目前正在开发一个 Qt c++ 项目,该项目基本上打印特定 SVN 存储库的 2 个特定修订版(用户输入回购和修订版)之间的所有提交日志消息。
我需要在 repo 中获取修订计数 URL。
我想在 Windows 10 上执行此操作,所以我想批处理命令可能非常有用。
我正在使用 Visual SVN 服务器和 Tortoise SVN。
(如果需要的话,我的Qt版本是5.11.1)
我有一个批处理脚本,可以打印 .txt 文件两次特定修订之间的所有日志。
是这样的:
@ECHO OFF
REM This Script Takes all the logs between a given repository's 2 specific revision.
REM Below, we store the first parameter which is the URL of the Repository that is wanted.
SET urlOfRepository=%1
REM Below, we store the second parameter which is the first revision that is wanted.
SET firstRevision=%2
REM Below, we store the third parameter which is the second revision that is wanted.
SET secondRevision=%3
REM Below is the command for getting all the log messages between the first and the second revision that is wanted in the wanted repository and printing to a .txt file.
svn log -r %firstRevision%:%secondRevision% --limit %secondRevision% %urlOfRepository% > svnLog.txt
EXIT /B 0
如果有人能帮助我,我会很高兴。
如果需要,我可以进一步澄清问题,所以请不要犹豫,通过评论与我联系。
提前致谢。
感谢 Kostix,答案是:
svn info -r HEAD --show-item revision %URL%
而且我已经写了一个脚本来解决我的问题。这是:
@ECHO OFF
REM This Script writes the revision count of a specific SVN repository
REM Below, we store the first parameter which is the URL of the Repository that is wanted.
SET urlOfRepository=%1
REM Below, is the command that returns the count of revisions in the specifically given SVN repository and writes to a .txt file
svn info -r HEAD --show-item revision %urlOfRepository% > svnCountOfRepoRevisions.txt
EXIT /B 0
没必要搞那么复杂——一个
svn log -r HEAD:1 %URL%
应该可以。
特殊的 HEAD
修订版自动成为存储库中的最后一个,修订版 1 是第一个(很明显)。
Subversion 足够聪明,可以跳过 URL 没有的修订
存在,所以,比如说,如果它是在修订版 42 中添加的,svn log
不会抱怨修订范围 [41…1].
中没有 URL
您可以通过运行
获取更多信息
svn help log
在您的控制台中 window。
我目前正在开发一个 Qt c++ 项目,该项目基本上打印特定 SVN 存储库的 2 个特定修订版(用户输入回购和修订版)之间的所有提交日志消息。
我需要在 repo 中获取修订计数 URL。
我想在 Windows 10 上执行此操作,所以我想批处理命令可能非常有用。
我正在使用 Visual SVN 服务器和 Tortoise SVN。
(如果需要的话,我的Qt版本是5.11.1)
我有一个批处理脚本,可以打印 .txt 文件两次特定修订之间的所有日志。
是这样的:
@ECHO OFF
REM This Script Takes all the logs between a given repository's 2 specific revision.
REM Below, we store the first parameter which is the URL of the Repository that is wanted.
SET urlOfRepository=%1
REM Below, we store the second parameter which is the first revision that is wanted.
SET firstRevision=%2
REM Below, we store the third parameter which is the second revision that is wanted.
SET secondRevision=%3
REM Below is the command for getting all the log messages between the first and the second revision that is wanted in the wanted repository and printing to a .txt file.
svn log -r %firstRevision%:%secondRevision% --limit %secondRevision% %urlOfRepository% > svnLog.txt
EXIT /B 0
如果有人能帮助我,我会很高兴。
如果需要,我可以进一步澄清问题,所以请不要犹豫,通过评论与我联系。
提前致谢。
感谢 Kostix,答案是:
svn info -r HEAD --show-item revision %URL%
而且我已经写了一个脚本来解决我的问题。这是:
@ECHO OFF
REM This Script writes the revision count of a specific SVN repository
REM Below, we store the first parameter which is the URL of the Repository that is wanted.
SET urlOfRepository=%1
REM Below, is the command that returns the count of revisions in the specifically given SVN repository and writes to a .txt file
svn info -r HEAD --show-item revision %urlOfRepository% > svnCountOfRepoRevisions.txt
EXIT /B 0
没必要搞那么复杂——一个
svn log -r HEAD:1 %URL%
应该可以。
特殊的 HEAD
修订版自动成为存储库中的最后一个,修订版 1 是第一个(很明显)。
Subversion 足够聪明,可以跳过 URL 没有的修订
存在,所以,比如说,如果它是在修订版 42 中添加的,svn log
不会抱怨修订范围 [41…1].
您可以通过运行
获取更多信息svn help log
在您的控制台中 window。