有没有办法在eclipse中提交之前执行ant目标?

时间:2011-08-30 14:29:46

标签: eclipse svn ant

我们有一个构建属性文件,其中包含存储库的当前全局修订版。在有人标记项目之前,手动更新了此文件。

我的想法是编写一个ant任务,它更新属性文件中的修订号,并在eclipse中设置一个项目构建器来执行任务。但问题是,您只能选择在清理之前或之后或手动或自动构建时运行任务。

有没有办法在提交之前执行目标,以确保修订号始终更新?

1 个答案:

答案 0 :(得分:1)

让你的版本工具完成工作,这是他的一部分 这是一个使用cvs或cvsnt时使用cvs keywords的构建文件头的示例。
您之前可能已经在多个来源中看到了这一点,因为这是一个很好的做法。
其他版本控制像颠覆等工具有类似的功能,只需查看他们的手册,
fe见Subversion, keyword substitution

<?xml version="1.0" encoding="UTF-8"?>

 <!--+
     | $Author:$
     | $Date:$
     | $Revision:$
     |
     | Description :
     |  bla bla bla
     |  bla bla
     |  bla
     | 
     +-->



<project name="..." default="...">
  <description>
   description
  </description>
...

cvs元信息会在每次提交时自动更新,您无法忘记。
将这些关键字放在编辑器的文件模板中,您就完成了

但要注意,你的difftool会显示每个文件的差异,即使只有修订版号由于分支而发生了变化。 F.E.我使用Eclipse并且他们的difftool不够聪明,无法忽略像关键字这样的特定部分(仍在等待插件来解决这个问题......)。但是过了一段时间你会习惯;-)
在团队中工作时,由于存在差异问题,在冲突发生之前必须就是否使用关键字达成一致。