有没有办法确定subversion中的最新标签?
对于我部署的应用程序,客户端需要有另一台服务器,以便在实时服务器出现故障时可以访问。已经有一个自动化系统可以将数据库复制到备份服务器。应用程序代码位于 subversion 存储库中,我想编写一个脚本,将代码从 subversion 自动复制到备份服务器。我有一个执行此操作的脚本,但是,我需要手动告诉它要检索的标签。有没有办法让它完全自动化。
服务器正在运行 Redhat。
此 shell 命令输出您tags
目录中最近创建的标签。
svn log -v --limit 1 tagsURL | awk '/^ A/ { print $2 }'
Run Code Online (Sandbox Code Playgroud)
如果您从已检出的存储库中调用该命令,则可以使用相对 svn 路径标记^
:
svn log -v --limit 1 ^/tags | awk '/^ A/ { print $2 }'
Run Code Online (Sandbox Code Playgroud)
小智 4
如果您的标签在排序时按顺序列出,您可以使用以下内容获取最新标签的名称:
svn ls .../path/to/repo/tags | tail -n 1
Run Code Online (Sandbox Code Playgroud)
如果您的项目的标签结构不是那么严格,则结果svn ls
将需要传递-v
(详细)选项并根据输出中的日期进行排序。