通过当前svn修订号更新appengine-web.xml中的版本

时间:2011-12-24 16:49:17

标签: xml svn google-app-engine command-line-interface revision

我们正在尝试根据svn版本号自动更新appengine版本号。

这是appengine-web.xml文件:

<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
    <application>XYZ</application>
    <version>5646</version>
        ....

我们如何每天自动将5646替换为当前的svn修订号?

理想情况下,它是一个命令行,与'svnversion'(输出看起来像10358:10359)有关。

2 个答案:

答案 0 :(得分:1)

我不得不一次又一次地写:

如果您可以使用Windows CLI程序,则必须使用TortoiseSVN中的SubWCRev

  • 编写并添加到appengine-web.xml的repo模板文件中,版本字符串替换为SubWCRev-keyword(在您的情况下为$ WCREV $)
  • 如果要在xml文件中包含实际数据,请在工作副本中运行SubWCRev,获取最终文件。 Useit

答案 1 :(得分:0)

嗯,这可能看起来很烦人,但如果您将项目转换为Maven项目,这是最简单的。然后,您可以使用maven-buildNumber-plugin之类的插件在任何构建文件中动态替换所需的任何值(使用标准maven-replacer-plugin)。

需要注意的是,您必须使用maven-gae-plugin来编译和部署应用程序。我使用Eclipse,它只是意味着你不是在UI中使用Google App Engine按钮,而只是进行构建配置(即 gae:deploy ),然后在将来单击构建按钮

好处是,现在你可以对你的项目进行任何数量的复杂构建步骤修改,并且通过Maven的魔力,你不需要在Maven本身之外下载任何额外的插件或jar,因为它只是为您获取并安装它们。这使得其他人可以更轻松地从稀疏SVN中检查您的GAE应用程序并随时构建它。